destructor 相关问题

面向对象编程中的一种特殊方法,在对象被销毁时调用

可以在函数中通过值传递具有私有析构函数的对象吗?

如果一个类具有不可访问的(私有)析构函数,是否可以将其按值传递给函数,如下例所示? A类{ 〜A(){} }; // 在 GCC 和 Clang 中正常,在 MSVC 中错误 无效 f(A) {} ...

回答 1 投票 0

PyBind11 析构函数未调用?

我有一个用 PyBind11 包装的 C++ 类。问题是:当 Python 脚本结束时,C++ 析构函数不会被自动调用。这会导致退出不整齐,因为网络资源...

回答 3 投票 0

C++中析构函数的用法是什么?

我知道C++中构造函数的用法,但我无法理解对象何时死亡以及为什么有析构函数以及如何调用它。 班级比例{ 民众: 比率(); 〜比率(); }

回答 1 投票 0

避免在复制构造函数和运算符=

在 C++ 中,当类包含动态分配的数据时,显式定义复制构造函数、operator= 和析构函数通常是合理的。但这些特殊方法的活动是重叠的......

回答 3 投票 0

使用析构函数时清除成员变量

我正在做一些关于 C++ 的在线测验,下面是我遇到的问题 http://www.interqiew.com/ask?ta=tqcpp01&qn=3 A级 { 民众: A(int n = 2) : m_i(n) { } 〜A() { s...

回答 3 投票 0

C++中如何防止派生类的构造函数和析构函数被直接调用

我有一个抽象类“Entity”。我想防止手动调用其派生类的构造函数和析构函数。 要创建和销毁此类的实例,我使用

回答 1 投票 0

删除具有类成员的结构

我有一个结构: 结构持有者 { 整数值; std::unordered_map num_to_addr; }; 我动态分配一个结构持有者: 结构持有者*句柄=新的结构持有者; 我工作并且

回答 1 投票 0

如何在 C 中模拟构造函数和析构函数行为(对于特定数据类型)

我有一个 C (嵌套)结构,我想在我的代码中自动初始化和销毁它。 我正在 Linux 上使用 GCC (4.4.3) 进行编译。我隐约知道GCC函数属性的构造...

回答 5 投票 0

当构造函数不存在时,析构函数被省略?

下面的代码重现了我遇到的问题,MSVC 2022: #包括 结构体A { 静态无效消息() { std::cout << "A::message()\n"; } struct...

回答 1 投票 0

在c++中调用析构函数创建Vector数组

#包括 #包括 班级学生 { int *arr_roll; 民众: 学生(size_t a){ arr_roll = new int(a); } 〜学生(){ std::cout<<&...

回答 2 投票 0

当我在 if 语句中返回对象的新实例时调用析构函数

Vec 类 { 民众: 无符号整型暗淡; 浮动*元素; // 构造函数 Vec() : 暗淡(0), 元素(nullptr) {} Vec(unsigned int dim, ...) : dim(dim), elements(new float[dim]) ...

回答 1 投票 0

新建和放置新立即调用类析构函数

这是我遇到过的一件有点奇怪的事情。这是我正在制作竞技场分配器和智能指针的项目的一部分,目标是将所有内容包装在过多的 am...

回答 1 投票 0

.obj 文件中有关 FreeType 库类析构函数的未解析外部 T::~T

以或多或少的良好方式解决了这个问题之后: 如何将 Borland 6 C++ 项目从包含 indy.bpi 更新为 indy60.bpi? ...我现在遇到另一个困难: 我现在有“unreso...

回答 1 投票 0

C++ 在析构函数后访问覆盖纯虚函数并设置新值时出现问题

#包括 使用命名空间 std; 类摘要{ 受保护: int* arr; 整数大小; 民众: 摘要(int s = 10) { 大小=s; arr = new int[大小]; } ...

回答 1 投票 0

C++ - 捕获双重异常

我有以下代码: #包括 使用命名空间 std; A类{ 民众: A() { 计算 << "A::A()" << endl;} ~A() { cout << "A::~A()" << endl; thr...

回答 2 投票 0

如果删除析构函数,编译器还会隐式生成默认构造函数吗?

如果删除析构函数,编译器还会隐式生成默认构造函数吗? GCC可以编译以下代码: 结构A { ~A() = 删除; 整数x; 整数y; 维尔...

回答 1 投票 0

对象的析构函数导致崩溃

当我运行下面的代码时,它崩溃了。如果我删除析构函数,它就会起作用。为什么? #包括 #包括 #包括 使用命名空间 std; vectmy 类...

回答 2 投票 0

C++ 对象上的共享指针多次调用析构函数

我正在研究C++智能指针。我做了以下测试: TView 类使用指向 TMat 类的智能指针。 我发现 TMat 析构函数被调用了不止一次。我不明白...

回答 1 投票 0

Dart 中对象销毁之前如何做一些事情?

在 Java 中我们可以做类似 override Finalize() 的事情,在 C++ 中我们可以做类似 ~Someclass() 的事情, 但是我怎样才能在 dart 中做到这一点,我阅读了 https://www.dartlang.org/ 中的文档,但没有找到答案。

回答 3 投票 0

类析构函数的实际应用

我目前正在尝试了解类和构造函数/析构函数。我理解两者的作用,但我在析构函数方面遇到了困难,因为我想不出实际的应用......

回答 6 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.