raii

raii

文章 0 浏览 3

D 中基于堆栈的对象实例化

我正在学习 D,并且对我遇到的错误感到困惑。 考虑以下事项: module helloworld import std.stdio import std.perf ptrdiff_t main( string[] args )…

故人如初 2024-09-28 11:35:45 6 0

当语言不支持析构函数时如何对堆栈展开做出反应?

假设您已经创建了 Window 类的实例。该窗口显示给用户。然后,抛出异常,并且对实例的引用丢失,但用户仍然可以看到该窗口,因为该实例仍然存在(只是…

顾冷 2024-09-26 22:31:14 4 0

如何将 C API 封装到 RAII C++课程?

给定一个控制拥有项目的会话的库的 C API,将 C API 封装到 RAII C++ 类中的最佳设计是什么? C API 如下所示: HANDLE OpenSession(STRING sessionID…

蛮可爱 2024-09-24 01:04:46 5 0

GC 语言中是否有关于 RAII 的研究(或更好的使用)?

注意:对象生命周期 RAII 不使用/使用块作用域 RAII 似乎可以使用额外的 gc 类别、短寿命对象(稍微频繁地检查 gc 类别)、长寿命对象(不太频繁地检…

妞丶爷亲个 2024-09-18 05:50:54 6 0

C++ 的方式抛出特定异常时析构函数跳过工作?

我在堆栈上有一个对象,我希望其析构函数在调用析构函数时跳过一些工作,因为由于通过堆栈上对象的范围抛出特定异常,堆栈正在展开。 现在我可以在堆…

兮子 2024-09-10 20:59:46 10 0

何时不使用 RAII 进行资源管理

谁能给我提供一个或多个具体示例,说明 RAII 不是最有效的资源管理方法,为什么?…

薔薇婲 2024-09-10 14:39:02 7 0

RAII 和分配

我为 sqlite3 连接创建了以下类: class SqliteConnection { public: sqlite3* native SqliteConnection (std::string path){ sqlite3_open_v2 (path.…

作妖 2024-09-10 07:58:45 5 0

您可以将shared_ptr 用于C 风格数组的RAII 吗?

我正在研究一段代码,该代码有许多可能的故障点,导致其提前退出该函数。我正在交互的库要求将 C 样式数组传递给函数。因此,我不是在每个退出点对数…

暮年慕年 2024-09-10 01:38:31 7 0

释放分配的内存

这是好的做法吗?或者我应该用函数替换 { 和 } 之间的代码块?它可以重用(我承认),但我这样做的唯一动机是释放 colsum 因为它巨大并且不是必需的,…

虐人心 2024-09-10 01:04:31 4 0

C++ Raii 和堆栈展开

(我修改了原来的问题,使其更有意义) 关于 return 语句,Raii 对象在 return 语句之前/之后/之间是否被销毁? 例如 size_t advance() { boost::lock…

彩扇题诗 2024-09-08 02:45:17 6 0

一旦引用计数达到 0,就让shared_ptr 调用成员函数

我正在为不能与 DuplicateHandle 一起使用的 HANDLE 创建一个包装器,因此我尝试将句柄包装在共享指针中。 想象一下以下代码: class CWrapper { publ…

倾城泪 2024-09-06 04:23:59 4 0

~1s 延迟控制应用程序:这适合 Java 吗?

在我的工作中,我们最近完成了控制应用程序的系统架构,该应用程序的最大延迟约为一到两秒。它分布在小型 ARM 片上盒上,通过 IP LAN 进行通信。 我们…

清风挽心 2024-09-03 06:40:52 5 0

为 RAII 模板类编写对象生成器的更好方法?

我想编写一个 对象生成器 用于模板化 RAII 类——基本上是一个函数模板,用于使用参数的类型推导来构造对象,因此不必显式指定类型。 我预见的问题是…

血之狂魔 2024-08-30 23:48:17 5 0

C++ RAII 教程

Closed. This question does not meet Stack Overflow guidelines. It is not currently accepting answers. 要求我们推荐或查找工具、库或最喜欢的…

终止放荡 2024-08-29 00:25:14 2 0

当本机 (C++) 异常传播到 CLR 组件时,不会调用析构函数

我们有大量的本机 C++ 代码,已编译成 DLL。 然后我们有几个包含 C++/CLI 代理代码的 dll 来包装 C++ 接口。 最重要的是,我们有 C# 代码调用 C++/CLI…

荒岛晴空 2024-08-26 06:19:13 5 0
更多

推荐作者

烙印

文章 0 评论 0

singlesman

文章 0 评论 0

独孤求败

文章 0 评论 0

晨钟暮鼓

文章 0 评论 0

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