腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
4
回答
静态类的
析
构
函数
需要
互斥
?
、
、
我们有一个静态(单例)类,它将在
多线程
环境中使用。我们在它的
构造
函数
和
其他内存
函数
中使用
互斥
。但是,
析
构
函数
没有
互斥
锁。
析
构
函数
做一些任务,比如清理其他成员对象,等等。我们
需要
在
析
构
函数
中加入
互斥
量吗?
浏览 1
提问于2009-06-02
得票数 3
2
回答
关于
C++
构造
函数
中的异常的混淆
、
关于在
C++
的
构造
函数
中抛出的异常,我发现了一些看起来相互矛盾的答案。中的一个答案是,如果在
构造
函数
内抛出异常,则假定
构造
未完成,因此不调用
析
构
函数
。但讨论了RAII的概念,使用在
构造
函数
中创建并在
析
构
函数
中清除的
互斥
锁的示例。它说明,如果在
构造
函数
中创建了
互斥
锁,然后<em
浏览 0
提问于2019-05-07
得票数 1
1
回答
C++
多线程
:
构造
函数
和
析
构
函数
是否
需要
互斥
?
、
对于将被多个线程访问的对象,我
是否
需要
为其
构造
函数
和
析
构
函数
使用
互斥
? 我的猜测是在
析
构
函数
中
需要
一个
互斥
,因为可以让一个线程访问该对象,而另一个线程删除该对象。另一方面,我想不出为什么我们
需要
构造
函数
中的
互斥
锁,因为在对象完全
构造
之前,不能有其他线程访问它
浏览 52
提问于2019-03-14
得票数 2
回答已采纳
3
回答
如何正确删除
互斥
?
、
、
、
在我的一个
析
构
函数
中使用
C++
,我说然而,这会在我的Xcode中导致错误"No viable overloaded '='“。相同的
互斥
先前在
构造
函数
中初始化为请告知,作为
C++
析
构
函数
的一部分,我如何正确处理此问题
浏览 1
提问于2011-05-28
得票数 3
回答已采纳
1
回答
如何判断静态对象
是否
已在C++11中销毁
、
、
在C++11规范中,basic.start.term 1声明: 在C++03中,我的
析
构
函数
被命令。命令可能不会被指定,但它们是被命令的。这对于必须注册自己的静态对象非常有用。规范中没有
多线程
的概念,因此规范没有无序<
浏览 1
提问于2018-10-12
得票数 0
2
回答
类似于javascript的
c++
中基于堆栈的对象
、
、
、
、
在javascript中寻找类似于堆栈中的
析
构
函数
或
c++
中的局部对象的
构造
,例如class M { int cnt;} // here the destructor of m will printf "Count is 2"); 所以这意味着我正在寻找一个当它的作用域结束时(当它“超出作用域”时)执行操作的
构造
它应该是健壮的,因为它在作用域结束时不
浏览 14
提问于2012-11-04
得票数 5
回答已采纳
2
回答
boost::lock_guard分配、
构造
函数
和
析
构
函数
开销
、
、
、
、
我正在学习
互斥
,我看到,要使用锁保护,每次迭代都必须为锁保护分配内存,调用
构造
函数
,然后调用
析
构
函数
。与从未超出范围的锁相比,这似乎是相当大的开销。我明白锁护的好处,但我能通过避开它们节省多少时间?
浏览 0
提问于2016-02-27
得票数 1
回答已采纳
2
回答
构造
函数
和
析
构
函数
的调用序列?
、
、
C++
标准
是否
指定了objA
和
objB
构造
函数
的相对顺序?例如,我们
是否
可以假设当调用objA的
构造
函数
时,由objB的
构造
函数
引起的任何副作用都是可见的?在C时,将调用objA
和
objB的
析
构
函数
。对这些
析
构
函数
是否
有类似的测序要求?最后,如果活性分析表明objA在B点之后
浏览 4
提问于2013-06-27
得票数 0
回答已采纳
1
回答
STL字符串终止的
析
构
函数
、
、
、
我有一个
多线程
程序,我忘记使用
互斥
。实际上,这要复杂得多,但我想知道下面的简单代码
是否
会导致这样的中止。当调用复制字符串的
析
构
函数
时中止的线程: void (){ someglobalstring = newcontent;} 问题:使用std::string的读
和
写更新的
C++
实现线程安全吗?
析
构
函数</
浏览 0
提问于2018-11-05
得票数 0
回答已采纳
5
回答
C++
是否
需要
为每个新位置调用
析
构
函数
?
我知道放置新的调用通常与对
析
构
函数
的显式调用相匹配。我的问题是:如果我不
需要
析
构
函数
(没有放在那里的代码,也没有具有
析
构
函数
的成员变量),我能安全地跳过显式
析
构
函数
调用吗?下面是我的用例:我想为case编写
C++
绑定。在C中,许多对象只能通过指针访问。而不是创建包含单个指针的包装器对象(这是浪费的
和
语义上的混淆)。我想使用pla
浏览 3
提问于2011-01-02
得票数 2
回答已采纳
2
回答
在
构造
函数
和
析
构
函数
中锁定共享资源
、
我相信我已经很好地掌握了
C++
中的
多线程
的基础知识,但是我从来没有得到过关于在
构造
函数
或
析
构
函数
中锁定共享资源周围的
互斥
锁的明确答案。我的印象是你应该锁定这两个地方,但最近同事们不同意。} int mValueOne;}; 当然,通过初始化列表,一切都应该是安全的,但是
构造
函数
中的语句呢在
析</e
浏览 2
提问于2012-07-25
得票数 8
回答已采纳
5
回答
java中的无痛资源管理
、
在
C++
中,我们在
构造
函数
中获取资源,然后在
析
构
函数
中释放它。AFAIK java类没有
析
构
函数
。
浏览 1
提问于2008-09-12
得票数 6
回答已采纳
4
回答
C++
,
构造
函数
限制
、
我正在学习
C++
,我不明白下面这个黑体字句的意思: 不能用关键字vir
浏览 5
提问于2010-04-03
得票数 10
回答已采纳
6
回答
多个
构造
函数
的
析
构
函数
我在
C++
中有两个
构造
函数
和
一个
析
构
函数
。当我为我的对象使用第一个
构造
函数
时,
析
构
函数
被调用来删除我想要的A[],但是当我使用第二个
构造
函数
时,我不
需要
调用
析
构
函数
,但是
C++
编译器无论如何都会调用它,这会导致错误。
浏览 0
提问于2011-10-12
得票数 0
回答已采纳
1
回答
使用
互斥
锁同步C#对象:“对象同步方法是从不同步的代码块中调用的”错误
、
、
、
我有一段C#应用程序代码,在创建对象的过程中,我使用
互斥
锁来同步一些代码。对象
构造
函数
获取
互斥
锁,并仅在不再
需要
该对象时(在应用程序关闭期间)才释放它。因此,释放
互斥
锁的一个地方是对象
析
构
函数
。出现的问题是,有时在调用对象
析
构
函数
中的ReleaseMutex()时会出现异常。例外情况是:“对象同步方法是从未同步的代码块中调用的”。似乎执行间隔收集的线程(有时调用对象
析</e
浏览 0
提问于2012-09-22
得票数 2
回答已采纳
2
回答
当在其他地方与unique_lock一起使用相同的
互斥
体时,在lock_guard上等待/通知
是否
安全?
、
、
、
这
是否
适用于所有的平台,还是看起来像当前的平台?unique_lock
和
lock_guard可以使用相同的
互斥
对象彼此工作吗?
浏览 1
提问于2018-03-18
得票数 0
回答已采纳
1
回答
在现代
c++
代码中
析
构
函数
有多常见?
、
在标准
c++
库中,所有容器
和
所有输入/输出流都有自己的
构造
函数
和
析
构
函数
,它们处理所有相关的资源获取
和
发布。因此,对于大多数
需要
析
构
函数
(例如内存和文件管理)的任务,现代开发人员不必定义
析
构
函数
。应该显式定义
析
构
函数
的一种情况是处理数据库连接。但是
浏览 0
提问于2019-02-15
得票数 5
4
回答
C++
是否
为纯虚拟类创建默认的“Constructor/Destructor/Constructor/Constructor/复制赋值运算符”?
、
、
C++
编译器
是否
生成默认
函数
,如
构造
器/
析
构
函数
/复制-
构造
器.为了这个“课”?class IMyInterface virtual void MyInterfaceFunction() = 0;我的意思是不可能实例化这个“类”,所以我认为不会生成默认
函数
。否则,人们会说你必须使用虚拟
析
构
函数
。这意味着,如果我没有定义
析
<em
浏览 5
提问于2014-01-23
得票数 9
回答已采纳
5
回答
为什么一个破坏者不能被标记为警察?
、
、
在
C++
中,您可以声明很多东西为:变量、
函数
(包括成员
函数
和
运算符)、
构造
函数
,以及自C++1z、以及
和
。struct X {}; 如果不提供
析
浏览 3
提问于2017-07-13
得票数 39
回答已采纳
2
回答
C++
调用
构造
函数
中的最终虚拟
函数
、
、
、
确实,在
构造
函数
和
析
构
函数
中调用虚拟
函数
不是一个好做法,应该避免。这是因为虚拟
函数
受到子类的影响,但是在构建或销毁阶段,子类还没有被
构造
(在
构造
中)或者已经被销毁(在
析
构
中)。但是,如果在
构造
函数
或
析
构
函数
中调用虚拟最终
函数
,会发生什么情况?我认为应该没有问题,因为这在逻辑上
浏览 1
提问于2018-11-25
得票数 0
回答已采纳
点击加载更多
相关
资讯
比较 上下文管理器及构造/析构函数
C++中的vector和Java中的ArrayList的构造函数的区别
C+堆,栈,RAII
C/C+编程笔记:一文带你读懂C+面向对象和Java面向对象的区别
笔记五十:c+的深拷贝
热门
标签
更多标签
云服务器
ICP备案
云直播
对象存储
即时通信 IM
活动推荐
运营活动
广告
关闭
领券