腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(4080)
视频
沙龙
1
回答
为什么
要有一个类是std::is_trivially_copyable而不是std::is_trivially_copy_constructible才能在memcpy中使用
c++
根据各种
消息
来源(例如,),类必须是微不足道的可复制的,才能在memcpy中使用,但我不明白
为什么
一个微不足道的可复制构造类是不够的。只要我确保
析
构
函数
在适当的时候被调用,那么琐碎的可复制类的额外属性(比如一个微不足道的
析
构
函数
)就不重要了。如果在类上使用memcpy (例如,非平凡的
析
构
函数
(或移动构造
函数
))
会
导致问题,
有人
能</em
浏览 2
提问于2016-02-03
得票数 4
2
回答
有人
能
解释一下
为什么
这个
输出
会
显示
6次
析
构
函数
消息
吗
?
c++
Output of the Program #include <iostream>private: int imag; Complex(int real, int imag); int getreal(); void setreal(int real); Complex
浏览 17
提问于2021-07-20
得票数 0
回答已采纳
4
回答
这个
-> ~T()是做什么的?
c++
有人
能
解释一下
这个
代码摘录是做什么的
吗
?我的第一个猜测是d()调用了自身的
析
构
函数
,但后来我想知道
为什么
不能自己调用T的
析
构
函数
。
浏览 1
提问于2012-02-14
得票数 3
回答已采纳
2
回答
c++ -错误的
析
构
函数
被调用
c++
、
destructor
我对
析
构
函数
的理解有问题。< id; a = X(2); return 0; 我得到以下
输出
:销毁2 这对我来说完全出乎意料,因为我认为当一个对象停止存在时,
析
构
函数
总是会被调用。但是在
这个
例子中,对象1停止存在并被对象2替换,但是不是调用对象1的
析
构
函数
,
浏览 5
提问于2013-07-12
得票数 4
回答已采纳
4
回答
4级继承链中的C++虚拟
析
构
函数
。
c++
、
virtual-destructor
我正在用虚拟
析
构
函数
做一个小实验来回顾一下--想知道是否
有人
对以下问题有一个简单的解释(使用VS2010):运行了2个实验:B具有非虚拟
析
构
函数
%d具有非虚拟
析
构
函数
在D类型的堆上分配4个对象-在第一个3处指向A*,B*和C*的指针-为
浏览 1
提问于2012-06-16
得票数 3
回答已采纳
1
回答
C++对象的创建和销毁
c++
、
c++11
、
visual-c++
我正在处理一个类、构造
函数
和
析
构
函数
,但现在我不知道发生了什么,希望这里的人能解释
为什么
会发生这种情况。dog1 = Animal("Thor");Animal *pDog3 = new Animal("New"); 该类只具有一个构造
函数
,该构造
函数
打印构造
函数
和/或
析
构
浏览 0
提问于2018-10-07
得票数 1
回答已采纳
3
回答
向量与push_back()行为
c++
我正在学习理解类构造
函数
和
析
构
函数
。我编写了一个小型控制台代码,将一个类实例添加到向量中。这一切都很好,但我不明白的是,在向量中添加一个对象
会
触发两次
析
构
函数
。这一切
为什么
要发生?如果我不添加任何对象,向量本身就不会触发构造
函数
或
析
构
函数
,那么
为什么
会发生两次呢?
有人
能
解释一下
为什么
会发生这
浏览 4
提问于2015-10-09
得票数 3
回答已采纳
2
回答
static_assert失败,因为值类型对于std::向量是可销毁的
c++
、
c++14
、
stdvector
不知道
为什么
static_assert(is_destructible<_Value_type>::value
会
失败。typedef vector<MovieData> Movies; { Movies result; // Line 16} 如果
析
构
函数
被注释为
有人
能
解释一下
为什么
我的
析
构
<em
浏览 6
提问于2021-06-13
得票数 1
回答已采纳
3
回答
为什么
在从构造
函数
中抛出异常时不调用对象的
析
构
函数
?
c++
、
c++11
、
constructor
、
try-catch
有谁能
解释一下
为什么
下面
这个
片段的
输出
是: 我是不是错过了某种概念?
浏览 5
提问于2017-11-27
得票数 2
3
回答
了解静态成员
函数
、变量和
析
构
函数
c++
、
destructor
、
static-members
Retr(); } {} Test::~Test() count--;*/ 我正在练习静态成员
函数
和变量的用法我有一个静态成员
函数
,它计算并返回构造了多少个对象。在本例中,它应该
显示
1,但它
显示
了2。我不明白
为什么
会
这样。但是,
析
构
函数
会
减少每个构造对象的作用域的对端。不是
吗
?
浏览 0
提问于2015-10-25
得票数 0
1
回答
在C++中调用构造
函数
c++
、
constructor
、
overloading
、
variable-assignment
、
operator-keyword
this; { }只是为了跟踪调用了哪些构造
函数
然后,我在main中编写了以下代码:根据链接帖子中的答案,我预计会有四行
输出
:一行用于默认构造临时对象,一行用于复制,还有两行
析
构
函数
调用:一行用于销毁临时对象,另一行用于然而,我只得到了两行:“默认构造
函数</e
浏览 2
提问于2016-04-08
得票数 1
2
回答
C++
析
构
函数
调用错误的对象?
c++
、
destructor
我认为
这个
问题可以通过删除
析
构
函数
中的指定对象来解决(这是标准的
吗
?),而不是要重载复制赋值操作符。如果没有调用
析
构
函数
,那不是很不方便
吗
?使用调试器,Created 2和Destroyed 2都会在调用x = Test(2);行时
显示
。如果我们只是将x分配给对象2,
为什么
要立即调用它的
析
构
函数
?这将继续到下一部分。其次,由于对象2的
析<
浏览 0
提问于2019-01-16
得票数 0
回答已采纳
4
回答
C++:
析
构
函数
在它应该超出作用域之前被调用?
c++
、
destructor
我遇到了在子例程结束时为类调用
析
构
函数
的问题,尽管它应该在子例程的作用域之外定义。以下是我所拥有的
显示
问题的最小代码片段:using namespace std; private: } Foo bar(10); subroutine(bar);现在,对象栏的
析
构</em
浏览 1
提问于2012-10-05
得票数 6
回答已采纳
1
回答
这是cppreference.com中关于
析
构
函数
的隐式抛出的引号
吗
?
c++
这段来自的引文有错误
吗
? 到达
析
构
函数
上的
函数
尝试块的catch子句末尾的也
会
自动重新抛出当前的异常,就像由throw;重新抛出一样,但允许返回语句。很难相信
析
构
函数
会
自动重新抛出,当我所读过的每一位专家的每一篇文章都说,
析
构
函数
在任何情况下都不应该抛出。实际上,引号上面的示例代码
显示
了构造
函数
的隐式抛出,而不是
析</e
浏览 6
提问于2022-05-26
得票数 7
回答已采纳
1
回答
新旧样式类中的Python
析
构
函数
python
、
destructor
我试图理解
为什么
对象销毁在新风格的类中与旧风格的类中的工作方式不同。del__(self): x = Wrapper()Wrapper destructor但是,如果我使用Wrapper作为新的样式类,则只调用包装器
析
构
函数
,并且
输出
为: Wrapper d
浏览 0
提问于2013-01-15
得票数 5
回答已采纳
3
回答
即使没有
析
构
函数
,非静态类成员也被销毁了吗?
c++
、
c++11
、
destructor
在Bjarne第17.6节(生成默认操作)的“C++编程语言(第4版)”中,它提到了以下内容: #include <iostream> public:因
浏览 1
提问于2019-04-23
得票数 5
回答已采纳
2
回答
在c++中删除字符串对象
c++
、
string
我有一个const char* str,我想把它转换成一个简单的字符串,所以我使用std:: string ()构造
函数
并将str的值复制到我的变量中。<end> 所以在
函数
结束之前,我是否必须删除字符串newStr,或者std::string类的
析
构
函数
会被自动调用,并且
这个
newStr将被删除。当我读到时,我很困惑std::string类的
析
构
函数
不是虚拟的。但是它说当字符串超出作用域时,它将被删除。如果
析</
浏览 0
提问于2012-10-30
得票数 0
回答已采纳
3
回答
为什么
析
构
函数
只被调用两次,而构造
函数
只被调用一次?
c++
、
class
、
constructor
、
destructor
int main() CTemp * obj = new CTemp(); delete obj;}Do workIn dest
为什么
构造
函数
只被调用一次,而
析
构
函数
却被调用了两次?
有人
能
解释一下
吗
?
浏览 5
提问于2013-11-26
得票数 1
回答已采纳
2
回答
析
构
函数
中的Havok退出调用导致未处理的异常
c++
、
havok
当我使用havok编程时,当程序退出时我崩溃了, 我将havok
函数
绑定到C++类中,以简化main
函数
,并在类的
析
构
函数
中调用了havok
函数
,但这可能
会
导致“未处理的异常”崩溃。如果我从
析
构
函数
中去掉havok的相当
函数
,并把它放在main
函数
中,就没问题了。我只是想知道
为什么
它在
析
构
函数
中不起作用,而在m
浏览 1
提问于2011-01-25
得票数 3
2
回答
显式调用
析
构
函数
c++
、
destructor
我理解在大多数情况下,我们不应该显式地调用
析
构
函数
。示例:模板结构A{ ~A();};void f(A* p,A* q) {p->A::A();// OK:
析
构
函数
调用q->A::~A();// OK:
析
构
函数
call } 在我看来,在这种情况下,我们可以显式地调用
析
构
函数
,您能
解释一下
为什么</e
浏览 5
提问于2013-05-23
得票数 48
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
打卡,巩固一下PHP基础知识
【翻译】Rust生命周期常见误区
白话C+编程系列之十八 类(一)代码格式修订
C/C+编程笔记:如何使用C+实现单链表?单链表第一部分
PHP开发者必须了解的9个魔术方法
热门
标签
更多标签
活动推荐
运营活动
广告
关闭
领券