Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
Java 中是否有等效于 C++ 的析构函数? [复制]
这个问题在这里已经有答案了 最简单的设计如下 class Session Timer t new Timer 每当 Session分配完毕后 我在其中启动一个计时器 计时器将在 10 20 分钟后到期 现在 假设如果Session在计时器到
Java
destructor
PHP 中是否存在不调用析构函数的情况?
这是我第一次在 stackoverflow 上发帖 但这些帖子对我帮助很大 无论如何 关于我的问题 是否有 PHP 中的析构函数未被调用的情况 我问的原因是因为我有一个映射器类 它将数据映射到对象 在构造函数中 我启动一个事务 在析构函数中
php
OOP
destructor
C# 析构函数未按预期工作
请参阅下面的代码 我希望它打印 10 之一 因为我已经显式调用了垃圾收集器 但我总是得到 0 或 20 作为输出 这是为什么 void Main Panda forest panda new Panda 10 for int i 0 i
c
garbagecollection
destructor
如何手动销毁成员变量?
我有一个关于析构函数的基本问题 假设我有以下课程 class A public int z int ptr A z 5 ptr new int 3 A delete ptr 现在析构函数应该销毁对象的实例 上面的析构函数正是这样做的 释放由
c
destructor
如何手动删除类的实例?
如何手动删除类的实例 Example include
c
class
instance
destructor
kill
如果从析构函数调用构造函数会发生什么?
从 destruct 调用 construct 函数 它会产生无限循环吗 不 但这会 class Test public function construct echo Hi public function destruct new Tes
php
constructor
destructor
infiniteloop
C++ 构造函数和析构函数顺序
我正在尝试有关基类和成员构造和销毁的代码 并且我对构造函数和析构函数的某些顺序感到困惑 这段代码的输出是 Base1 constructor Member1 constructor Member2 constructor Derived1
c
constructor
destructor
析构函数应该是线程安全的吗?
我正在查看遗留代码并发现以下片段 MyClass MyClass EnterCriticalSection cs Access Data Members NO Global members are being accessed here L
c
Multithreading
destructor
为什么删除不完整的类型实际上是未定义的行为?
考虑这个经典的例子来解释什么not与前向声明有关 in Handle h file class Body class Handle public Handle Handle delete impl private Body impl in
c
memorymanagement
destructor
forwarddeclaration
deleteoperator
非虚拟平凡析构函数+继承
假定一个类及其所有子类在存储在精确类型 或指向精确类型的指针 的变量中时只需要默认析构函数即可释放其资源 如果由基类指针引用并且子类可能会泄漏内存 并且然后被那个指针删除 Example include
c
inheritance
destructor
通过引用传递 - 为什么调用这个析构函数?
我找不到 在关于析构函数调用主题的许多问题中 任何与我的情况完全相同的问题 当传递的参数是引用时 为什么会调用析构函数 我将注释 主要在 main 中 放在我认为执行输出的代码行下 struct X simple test class in
c
destructor
C++ 中的列表析构函数
我刚刚实现了链接列表 它工作得很好 但甚至很难 我已经看到我无法在 Node 上创建工作析构函数的符号 这就是为什么它在代码中未实现 我需要在节点上实现工作析构函数 List 的析构函数 但这一个很简单 我将只使用 Node 类的析构函数
c
LinkedList
destructor
通用二叉树节点析构函数问题
我一直在做一项作业 现在我被有问题的析构函数困住了 我必须创建一个包含所有常用成员函数和一些特殊运算符的通用二叉树 还有一个限制 一切都必须迭代地工作 所以这次没有令人讨厌的递归黑客 BinTreeNode 类的析构函数显然有一些非常错误的
c
datastructures
binarytree
destructor
销毁对象放置新后未调用析构函数
我不知道为什么这不起作用 下列Function是通过放置 new 创建的 提供了一个函数来检查它是否应该被破坏 如果是 则手动调用其析构函数 这是测试用例 似乎从未调用析构函数 Represents a function at runtim
c
destructor
placementnew
什么情况下不会调用 C++ 析构函数?
我知道我的析构函数是在堆栈的正常展开和抛出异常时调用的 但不是在调用 exit 时调用 还有其他情况我的析构函数不会被调用吗 SIGINT 或 SIGSEGV 等信号怎么样 我认为对于 SIGSEGV 它们不会被调用 但对于 SIGNINT
c
Exception
signals
destructor
exit
非虚拟析构函数的未定义行为 - 这是现实世界的问题吗?
考虑以下代码 class A public A A class B public A B B A b new B delete b undefined behaviour 我的理解是 C 标准说删除 b 是未定义的行为 即 anything
c
destructor
undefinedbehavior
为什么 C++ 中的析构函数以与初始化相反的顺序取消分配内存?
以与变量相反的顺序取消分配内存有什么好处 考虑这个例子 Type1 Object1 Type2 Object2 Object1 假设Object2使用一些内部资源Object1并且只要Object1已验证 例如 Object2s 析构函数访
c
memorymanagement
destructor
RAII
如果构造函数抛出异常,是否会调用析构函数?
寻找 C 和 C 的答案 在 C 中 将 析构函数 替换为 终结器 它适用于 C 请参见下面的代码 但不适用于 C using System class Test Test throw new Exception Test Console
c
destructor
Finalizer
轻微破坏的意义
在 C 17 中 新的std optional要求它可以轻易被破坏 如果T在 Optional object dtor 中是可以轻易破坏的 optional 1 Effects If is trivially destructible v
c
destructor
C17
无法在二进制文件中找到 .dtors 和 .ctors
我正在读 黑客 剥削的艺术 一书 书中有一节解释了使用 dtors and ctors 我正在尝试重现本书的练习之一 但在我的可执行文件中没有这一部分 起初我以为问题是我正在编译 64 位 但现在我正在编译 32 位并且 dtors and
c
constructor
destructor
objdump
nm
1
2
3
4
5
6
...8
»