腾讯云
开发者社区
文档
建议反馈
控制台
首页
学习
活动
专区
工具
TVP
最新优惠活动
文章/答案/技术大牛
搜索
搜索
关闭
发布
登录/注册
精选内容/技术社群/优惠产品,
尽在小程序
立即前往
文章
问答
(9999+)
视频
沙龙
1
回答
Python
C++
中
析
构
函数
之间
的
区别
python
、
c++
、
destructor
C++
析
构
函数
和
Python
析
构
函数
的
契约有何不同,特别是在对象生命周期和资源回收时?我还没有找到一个全面的并排比较。 我认为C++
析
构
函数
所做
的
是完全释放对象所持有的内存。
Python
取消对象,但它仍然保留在缓存内存
中
(称为垃圾收集),然后在程序完成后完全释放内存。
浏览 9
提问于2022-05-02
得票数 -1
回答已采纳
1
回答
Python
类
析
构
函数
是否保证在程序结束前执行?
python
我们可以强制使用del执行
析
构
函数
,通常只是让垃圾收集器完成它
的
工作,但是如果我们在
Python
中
定义类
析
构
函数
,它是否保证对实例化
的
每个对象执行?
浏览 4
提问于2020-08-07
得票数 4
回答已采纳
1
回答
__init__
中
的
成员分配和引用计数
python
、
python-c-api
我正在为
Python
编写一个C扩展,通过,我很难理解__init__
函数
中
的
成员分配。因此,在第2.2节
中
,成员分配如下: tmp = self->first; self->first = first;它可能有一个
析
构
函数
,该
析
构
函数
导致代码被执行,试图访问第一个成员;或者,该
析
<em
浏览 2
提问于2019-09-03
得票数 2
回答已采纳
1
回答
C++
析
构
函数
调用boost::
Python
包装对象
python
、
c++
、
boost-python
在调用包装对象
的
C++
析
构
函数
时,考虑到达到对应
python
对象
的
零引用计数
的
时刻,
python
提供了任何保证吗? 我担心
的
是一个C++对象,它打开一个用于写入
的
文件,并在其
析
构
函数
中
执行文件关闭。当所有对对象
的
python
引用都被删除或超出作用域时,是否保证了文件被写入?我
的
经验表明,在这一
浏览 5
提问于2016-07-06
得票数 2
回答已采纳
1
回答
非多态和非抽象基类
中
的
虚拟
析
构
函数
python
、
c++
、
destructor
我正在编写一个c++类,它将与
python
进行接口。body_datamap <int, atom*> atoms;map <int, dihedral*> dihedrals;这个类是另一个类
的
基类我没有为这个类添加
析
构
函数
,因为我很困惑。在我所读到
的
关于基类
析
构
函数
的
所有文章
中
,它们都建议
浏览 7
提问于2014-01-31
得票数 1
回答已采纳
1
回答
为什么虚拟类
的
析
构
函数
不自动添加到vtable
中
?
c++
、
polymorphism
、
virtual
、
destructor
、
vtable
当虚拟类B派生自虚拟基类A时,除非在A和B
中
显式声明虚拟
析
构
函数
,否则vtable
中
B
的
析
构
函数
将指向A
的
析
构
函数
。为什么?为什么B
的
vtable
析
构
函数
不自动指向B
的
析
构
函数
而不必定义A和B虚拟
析
<em
浏览 0
提问于2018-04-14
得票数 1
回答已采纳
1
回答
F2py编译
的
Fortran模块
中
的
垃圾收集
python
、
fortran
、
f2py
背景 我目前正在编写一个有限元程序,主要是用
Python
编写
的
(为了方便),它使用Fortran子程序
的
几个模块来执行一些无法避免
的
任务(即装配/更新切线刚度矩阵)。这是使用f2py ()成功编译
的
,生成
的
.dll文件在
python
脚本
中
作为
python
模块导入。然后,
Python
可以成功地调用
函数
/子程序。Fortran模块
的
结构如下所示,不同
的</e
浏览 3
提问于2019-11-04
得票数 0
回答已采纳
16
回答
如果不应该在
析
构
函数
中
抛出异常,如何处理其中
的
错误?
c++
、
exception
、
destructor
、
raii
大多数人说,永远不要从
析
构
函数
中
抛出异常,这样做会导致未定义
的
行为。Stroustrup指出,“向量
析
构
函数
显式地为每个元素调用
析
构
函数
。这意味着如果一个元素
析
构
函数
抛出,向量销毁就会失败……实际上没有什么好
的
方法来防止从
析
构
函数
引发
的
异常,因此库无法保证元
浏览 41
提问于2008-09-24
得票数 298
回答已采纳
2
回答
析
构
与巨蟒
c++
、
python
、
boost
、
virtual-destructor
我使用boost::
python
将其导出到
python
中
。但是虚拟破坏者呢?任何基类都应该有虚拟
析
构
函数
,以避免错误
的
内存释放,对吗?我忘记了这一点,写了Base而没有
析
构
函数
。一切正常,但有大量
的
内存泄漏。现在我补充说:{ virtual ~Base();}; 在<e
浏览 0
提问于2011-04-11
得票数 1
回答已采纳
3
回答
C++销毁顺序:在类
析
构
函数
之前调用字段
析
构
函数
c++
、
destructor
、
object-destruction
有方法在类
析
构
函数
之前调用字段
析
构
函数
吗?<< "Big destructor" << std::endl;} Small small;{}Big destructor我
浏览 5
提问于2017-07-26
得票数 6
回答已采纳
1
回答
析
构
函数
是否根据标准有名称?
c++
使用可选
的
函数
说明符序列(7.1.2)、构造
函数
的
类名和参数列表,使用特殊
的
声明器语法来声明或定义构造
函数
。在这样
的
声明
中
,构造
函数
类名周围
的
可选括号将被忽略。“标准”没有明确规定
析
构
函数
有或没有名称,但是有许多关于如何使用特殊语言引用和声明
析
构
函数
的
引用,其中没有一个直接引用
析</e
浏览 2
提问于2010-04-22
得票数 5
回答已采纳
3
回答
基类没有
析
构
函数
,但派生类有。我是否需要寻找与堆无关
的
陷阱?
c++
、
inheritance
、
destructor
在继承方面,我知道建议您
的
类
的
析
构
函数
是虚拟
的
,因此除了任何派生
析
构
函数
之外,基类
的
析
构
函数
都会被正确调用。但是,我想知道在下面的场景
中
是否存在与派生对象相关
的
堆栈相关问题。让我们假设我们有一个基类,它没有
析
构
函数
(不管出于什么原因):以及具有<
浏览 6
提问于2016-05-22
得票数 2
回答已采纳
1
回答
试图理解multimap为什么像它那样构造/下降
c++
、
constructor
、
destructor
、
multimap
我想要理解
的
是为什么它在当时被分配。我已经用一个字符串和一个对象构造了一个multimap,在这个对象
的
构造
函数
&
析
构
函数
中
,当调用它们时,我有一个打印输出。谢谢你帮助我理解这
浏览 3
提问于2012-02-13
得票数 1
回答已采纳
1
回答
虚拟
析
构
函数
在C++
中
的
使用
c++
、
oop
、
constructor
、
virtual
、
destructor
虚拟
析
构
函数
和纯虚拟
析
构
函数
在C++
中
的
应用是什么?我必须使用虚拟
析
构
函数
而不是普通
析
构
函数
的
情况是什么?
浏览 0
提问于2020-03-26
得票数 2
2
回答
如何确保在
Python
类上按通常(但不正确)所期望
的
那样调用__del__
函数
?
python
、
python-3.x
、
python-2.7
我理解
Python
类
的
__del__
函数
:作为
析
构
函数
。 我也明白,有更多
的
‘琵琶’和可以说更优雅
的
方式来整理,特别是使用。然而,当编写可能被不太精通pythonic方式
的
用户使用
的
代码时,当清理非常重要时,是否有一种优雅
的
方法可以让__del__可靠地作为
析
构
函数
工作,而不影响
python
对__del__
的
自
浏览 2
提问于2018-07-25
得票数 4
回答已采纳
1
回答
虽然我已经提供了移动构造
函数
,但还是调用了复制构造
函数
。
c++
、
visual-c++
、
copy-constructor
、
move-constructor
: 10释放nullptr数据
的
析
构
函数
移动构造
函数
-Moving资源: 20复制构造
函数
-deep副本: 10释放数据
的
析
构
函数
为: 10 为: 20释放数据
的
<e
浏览 11
提问于2022-05-12
得票数 0
回答已采纳
1
回答
pybind11:带有静态py::object
的
进程退出
的
分段故障
python
、
c++
、
memory-management
、
destructor
、
pybind11
我使用pybind11在C++
中
创建一个模块,然后将它导入到
Python
程序
中
。这是通过CPython
中
的
普通脚本运行
的
,而不是嵌入式解释器。在我
的
模块
中
,我有一个定义静态py::object
的
函数
: static const py::object my_object = ...这在运行时很好因此,当object
析
构
浏览 20
提问于2022-01-15
得票数 0
回答已采纳
2
回答
显式调用
析
构
函数
c++
、
destructor
我理解在大多数情况下,我们不应该显式地调用
析
构
函数
。但是,我看到了C++11 Standard N3485第13.4.5节模板参数
中
的
一个示例: 对具有类模板专门化类型
的
对象
的
显式
析
构
函数
调用可以显式指定模板参数。我们可以显式地调用
析
构
函数
,您能解释一下为什么吗?在这个例子
中
,那些
析
构
函数
是
浏览 5
提问于2013-05-23
得票数 48
回答已采纳
6
回答
何时不使用虚拟
析
构
函数
?
c++
、
virtual-functions
我相信我曾多次搜索过虚拟
析
构
函数
,大多数都提到了虚拟
析
构
函数
的
用途,以及为什么需要虚拟
析
构
函数
。而且,我认为在大多数情况下,
析
构
函数
需要是虚拟
的
。那么问题是:为什么c++在默认情况下不设置所有
析
构
函数
?或在其他问题上: 我什么时候不需要使用虚拟
析
构
函
浏览 0
提问于2015-05-21
得票数 64
4
回答
4级继承链
中
的
C++虚拟
析
构
函数
。
c++
、
virtual-destructor
B具有非虚拟
析
构
函数
%d具有非虚拟
析
构
函数
在D类型
的
堆上分配4个对象-在第一个3处指向A*,B*和C*
的
指针-为了完整性,将第4个对象保留为D*。删除所有4个指针。正如我所料,在所有4个实例
中
,完整
的
析
构
函数
链都是以从D到A
的
逆序执行
浏览 1
提问于2012-06-16
得票数 3
回答已采纳
点击加载更多
扫码
添加站长 进交流群
领取专属
10元无门槛券
手把手带您无忧上云
相关
资讯
当对象释放时,避免析构函数调用两次
比较 上下文管理器及构造/析构函数
第二部分:关于析构函数何时执行
Python 中的魔法函数
Python中的函数参数
热门
标签
更多标签
云服务器
即时通信 IM
ICP备案
对象存储
实时音视频
活动推荐
运营活动
广告
关闭
领券