raii

raii

文章 0 浏览 4

定制 RAII C++作用域互斥锁的实现

我无法使用 boost 或最新的 std::thread 库。解决方法是创建作用域互斥体的自定义实现。 简而言之,当一个类实例创建一个互斥锁时。类销毁后,互斥锁…

感悟人生的甜 2024-12-13 00:52:31 1 0

将资源锁定对象作为参数传递

将对象作为参数传递的好方法是什么?在我的代码中,我一直使用引用而不是指针,如果可能的话,我想坚持这种方法。但是,有一种情况无法正常工作: cla…

过去的过去 2024-12-13 00:47:50 0 0

堆栈分配的 RAII 对象与 DI 原理

在 C++ 中,我经常使用 RAII 风格的对象来使代码更可靠,并将它们分配在堆栈上以使代码更具性能(并避免 bad_alloc)。 但是在堆栈上创建具体类的对象…

暮色兮凉城 2024-12-10 06:54:56 1 0

惯用的短寿命本地对象类似于 RAII

我遇到了 Objective-C 的这个片段: NSNumber *theBalance = [[[NSNumberFormatter alloc] init] numberFromString: [textField text]]; 这似乎泄漏了…

尽揽少女心 2024-12-09 15:25:50 2 0

C++ RAII 管理对象状态的更改和恢复

我有一堂课 foo。对 foo 的操作需要调用 foo::open()、多次 foo::write(),并且必须以 foo::close() 调用结束: #include class foo { public: foo() …

会发光的星星闪亮亮i 2024-12-08 07:55:45 0 0

C++ RAII 问题

因此,据我了解,要正确实现 RAII,如果我在哪里调用 CreateFont,我会将其包装在一个类中,在构造函数中使用 CreateFont 并使用 DeleteObject 在析构…

听,心雨的声音 2024-12-06 16:36:04 0 0

为什么 gcc 会立即销毁我的对象,尽管它的范围很大? (我该如何让它不这样做?)

我编写了一个带有附带保护类的小型分析类,如下所示: { ProfileGuard pg("SampleName"); // Code to profile ... } 但后来我注意到有时 gcc 会优化代…

甜点 2024-12-05 10:43:37 2 0

C++ 中 RAII 的正式处理和/或安全释放;

是否有关于 C++ 中 RAII 的正式处理和/或安全释放的研究论文?…

狼亦尘 2024-12-04 02:22:22 3 0

是否存在一种通用模式可以通过自动状态离开操作在 C# 中为对象提供表达式或状态生命周期?

命令式应用程序中有四种基本的对象生命周期: 表达式(临时)生命周期 范围生命周期 状态生命周期(事件之间) 应用程序生命周期 c# 的设计没有 RAII …

探春 2024-12-02 00:33:59 1 0

为什么 C++ 中的析构函数?以与初始化相反的顺序取消分配内存?

以与变量相反的顺序取消分配内存有什么好处?…

各自安好 2024-12-01 20:11:09 0 0

如何处理错误情况与非错误情况下的对象破坏

我有一个程序负责读取数据、格式化数据并创建记录,以及将记录输出到文件。本次讨论的重要类是: RecordGenerator - 包含控制主流程的线程 (获取数据…

舟遥客 2024-12-01 08:15:46 0 0

在“现代 C++”中,指向作为类成员的对象的指针

因此,我听到的关于现代 C++ 风格的一条经验法则是,不需要使用 new 或 delete,而应该使用智能指针。那么,当我有一个类,其中一个成员是指向另一个…

晨曦慕雪 2024-12-01 05:20:40 0 0

Python 与语句

我正在尝试使用 Python 的 with 语句,我发现在下面列出的代码中,我的 __init__ 方法被调用了两次,而我的 __exit__ 方法被调用一次。这可能意味着,…

油焖大侠 2024-12-01 00:17:49 1 0

检测析构函数何时因抛出异常而运行?

在 C++ 中,有什么好方法可以在析构函数中检测到由于抛出异常而不是触发析构函数的正常范围退出而在堆栈展开期间运行析构函数?我想知道,以便我可以…

几度春秋 2024-11-30 17:22:02 1 0

如何在 C# 程序中以 RAII 风格管理 COM 对象运行时?

我的 C# 程序使用具有大量各种接口和子对象的 COM 组件。问题是每次我检索某个 COM 接口时,都会创建一个 RCW,并且该 RCW 存在的时间未知(直到被 GC…

泛泛之交 2024-11-28 17:05:35 1 0
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文