腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
3
回答
理解派生类中
C++
析
构
函数
的行为
c++
、
inheritance
、
destructor
我正在阅读Stroustrup的
C++
编程书中的一段代码。double& operator[](int i) { return v[i]; }};
析
构
函数
(~Vector_container())重写基类
析
构
函数
(~Container())。注意,成员
析
构
函数
(~Vector())是由其类
浏览 0
提问于2019-07-10
得票数 2
回答已采纳
5
回答
C++
是否需要为每个新位置
调用
析
构
函数
?
c++
我知道放置新的
调用
通常与对
析
构
函数
的显式
调用
相匹配。我的问题是:如果我不需要
析
构
函数
(没有放在那里的代码,也没有具有
析
构
函数
的成员变量),我能安全地跳过显式
析
构
函数
调用
吗?下面是我的用例:我想为case编写
C++
绑定。在C中,许多对象只能通过指针访问。而不是创建包含单个指针的包装器对象(这是浪费的和语义上的混淆
浏览 3
提问于2011-01-02
得票数 2
回答已采纳
1
回答
C++
/CLI最终
析
构
函数
的需要
c++-cli
基本上,
为什么
C++
/CLI中有一个finalize
析
构
函数
。看起来GC在收集对象之前,检查是否手动
调用
了delete,如果没有,则
调用
终结器。那么,如果未
调用
delete,
为什么
GC不能
调用
正常的
析
构
函数
呢?
浏览 3
提问于2014-07-11
得票数 9
回答已采纳
2
回答
C#/CLI:如果在
析
构
函数
中使用Dispose(),则不
调用
析
构
函数
c#
、
c++
、
command-line-interface
、
destructor
、
dispose
我有一个名为"CTransferManaged“的
C++
/CLI类,它实现了终结器和
析
构
函数
:{~CTransfer() m_transfer = null
浏览 2
提问于2013-06-06
得票数 5
3
回答
只有在存在虚拟
函数
时才使用
C++
虚拟
析
构
函数
design
、
object-oriented
、
c++
、
constructors
这来自有效的
C++
(Meyers):我不明白
为什么
非多态类不应该声明虚拟
析
构
函数
。假设我有一个父类和一个子类,没有虚拟
函数
,并且有一个指向子对象的父类指针:如果我在父类指针上
调用
delete,它将只
调用
父
析
构
函数
,即使我也想
调用
子
析
构</
浏览 0
提问于2016-01-12
得票数 3
2
回答
带有p线程
析
构
函数
的
c++
thread_local
析
构
函数
android
、
c++
、
linux
、
pthreads
、
thread-local-storage
在
调用
了所有
C++
thread_local
析
构
函数
之后,我想做一些工作。这是特定于平台的- Android,所以我可以访问pthreads。问题是,何时
调用
pthread_key_created
析
构
函数
,在
C++
thread_local
析
构
函数
之前还是之后
调用
?或者他们可以交织在一起?我在Linux和p线程
析
构</e
浏览 7
提问于2017-11-11
得票数 0
回答已采纳
3
回答
为什么
对对象数组不按反向顺序
调用
析
构
函数
?
c++
、
destructor
在
C++
中,
析
构
函数
是按对象创建的相反顺序
调用
的,但我不明白
为什么
不为对象数组维护
析
构
函数
。<"constructor is called for object no :"<<j<<endl; }; {destructor is
浏览 3
提问于2015-07-06
得票数 1
回答已采纳
6
回答
为什么
你返回的对象不
调用
析
构
函数
呢?
c++
所以据我所知,您可以通过返回指向对象的指针来返回
C++
中的对象。但我的印象是,一旦
函数
运行完毕,
析
构
函数
就会在所有对象上被
调用
。
为什么
没有在你返回的对象上
调用
析
构
函数
?
浏览 0
提问于2012-03-10
得票数 0
回答已采纳
1
回答
为什么
在
C++
CLI中手动
调用
析
构
函数
(通过删除)之后不应该
调用
终结器
c++-cli
、
suppressfinalize
在参考了这个讨论了
析
构
函数
和终结器在中的区别的
C++
之后,我想知道
为什么
编译器会添加一些指令。来抑制finalize in
析
构
函数
?我们应该在
析
构
函数
和终结器中添加相同的“释放资源”代码吗?
浏览 13
提问于2012-07-24
得票数 0
1
回答
在VS 2010中调试时未
调用
析
构
函数
visual-studio-2010
、
unmanaged
我有一个使用托管
C++
类的C#项目。此托管
C++
类包装了非托管
C++
代码。} 我已经将一个简单的输出字符串放到了class的
析
构
函数
中如果我从visual studio运行程序,则不会
调用
foo
析
构
函数
。但是如果我通过双击它来运行程序(它是一个控制
浏览 1
提问于2010-08-26
得票数 0
6
回答
何时不使用虚拟
析
构
函数
?
c++
、
virtual-functions
我相信我曾多次搜索过虚拟
析
构
函数
,大多数都提到了虚拟
析
构
函数
的用途,以及
为什么
需要虚拟
析
构
函数
。而且,我认为在大多数情况下,
析
构
函数
需要是虚拟的。那么问题是:
为什么
c++
在默认情况下不设置所有
析
构
函数
?或在其他问题上: 我什么时候不需要使用虚拟
析
构<
浏览 0
提问于2015-05-21
得票数 64
2
回答
未
调用
析
构
函数
的DLL中的
C++
静态对象
c++
、
dll
、
destructor
当DLL中的静态
析
构
函数
没有被
调用
时,我遇到了一个问题。正在
调用
构造
函数
,但不
调用
析
构
函数
。如果我在我的main.cpp文件中放置了类似的代码块,我可以验证构造
函数
和
析
构
函数
都将被
调用
。mydll.dll!,但是没有详细说明
析</
浏览 3
提问于2014-03-19
得票数 3
3
回答
这个
C++
析
构
函数
是多余的吗?
c++
、
struct
、
destructor
我收到了一些
C++
代码,其中定义了如下各种结构: std::string someString; { someVectorOfStrings.clear(); } someStruct; 这里的
析
构
函数
是完全多余的吗如果结构被默认的
析
构
函数
破坏,那么任
浏览 3
提问于2014-10-03
得票数 42
回答已采纳
1
回答
多态=重新源泄漏中基类缺少的虚拟
析
构
函数
?
c++
、
c++11
、
memory-management
、
memory-leaks
我们知道,如果打算以多形性方式使用基类的
析
构
函数
,则需要将基类的
析
构
函数
指定为虚拟的,否则程序中可能会出现重新源泄漏,因为只
调用
基类
析
构
函数
,而不
调用
派生对象
析
构
函数
。我们还知道构造
函数
/
析
构
函数
是纯初始化/非初始化结构,运算符new / ope
浏览 3
提问于2015-10-31
得票数 4
回答已采纳
2
回答
如何在Rcpp中安全生成R警告
r
、
warnings
、
rcpp
、
setjmp
我们知道在Rcpp中应该避免
调用
Rf_error(),因为它涉及堆栈上的
C++
析
构
函数
之上的长
C++
。这就是
为什么
我们宁愿在Rcpp代码中抛出
C++
异常(比如throw Rcpp::exception("...")或通过stop("...")
函数
)。但是,R警告也可能导致对Rf_error()的
调用
(此行为取决于warn选项)。因此,打电话给Rf_warning()也是有风险的
浏览 1
提问于2014-07-03
得票数 21
回答已采纳
8
回答
虚拟
析
构
函数
是如何工作的?
c++
、
visual-c++
、
destructor
、
bounds-checker
几个小时前,我正在摆弄一个内存泄漏问题,结果发现我真的搞错了一些关于虚拟
析
构
函数
的基本东西!让我来解释一下我的类设计。我发现
析
构
函数
不是虚的,派生类的
析
构
函数
也不会被
调用
。令人惊讶的是,当我将
析
构
函数
设为虚拟
函数
时,它得到了修复。即使没有
调用
派生类
析
构
函数
,向量也会自动释放吗
浏览 5
提问于2010-04-27
得票数 6
回答已采纳
1
回答
C++
析
构
函数
与所有权
c++
、
c
、
destructor
、
ownership
我试图在
C++
编程中复制
C++
析
构
函数
和构造
函数
。*obj) { DestructString(&obj->b);}
析
构
函数
是在每个
函数
作用域的末尾
调用
的所以现在在DestructMyObject
函数
中,我<
浏览 1
提问于2019-10-18
得票数 2
回答已采纳
2
回答
未在
C++
中
调用
默认构造
函数
c++
在下面的代码中,我使用我无法理解的调试器进行跟踪
为什么
从不
调用
B b2()而是跳过它。
为什么
auto_ptr仅在派生创建的对象时才
调用
基本(A)
析
构
函数
(B)?
浏览 16
提问于2019-03-26
得票数 -1
2
回答
析
构
函数
中的Havok退出
调用
导致未处理的异常
c++
、
havok
当我使用havok编程时,当程序退出时我崩溃了, 我将havok
函数
绑定到
C++
类中,以简化main
函数
,并在类的
析
构
函数
中
调用
了havok
函数
,但这可能会导致“未处理的异常”崩溃。如果我从
析
构
函数
中去掉havok的相当
函数
,并把它放在main
函数
中,就没问题了。我只是想知道
为什么
它在
析
构
函数
浏览 1
提问于2011-01-25
得票数 3
1
回答
为什么
虚拟
析
构
函数
被分层
调用
,而其他虚拟
函数
却没有?
c++
、
destructor
、
virtual-functions
我不明白派生类
析
构
函数
如何
调用
它的基类虚拟
析
构
函数
,但是派生类的其他成员
函数
不会
调用
它们的基类虚拟对应
函数
。 这是
C++
对其
析
构
函数
的特殊处理吗?
浏览 9
提问于2022-10-02
得票数 2
点击加载更多
相关
资讯
比较 上下文管理器及构造/析构函数
笔记四十九:C+中的浅拷贝
C+堆,栈,RAII
关于C+的虚函数和多态,你觉得很难?首先你需要了解这三点!
C/C+编程笔记:一文带你读懂C+面向对象和Java面向对象的区别
热门
标签
更多标签
云服务器
对象存储
ICP备案
云点播
智聆口语评测
活动推荐
运营活动
广告
关闭
领券