raii

raii

文章 0 浏览 2

计划中的 RAII?

无论如何,有没有办法在方案中实现资源获取和初始化? 我知道 RAII 在 GC 语言中效果不佳(因为我们不知道对象何时被销毁)。然而,Scheme 有一些不错…

不寐倦长更 2024-08-18 03:54:25 3 0

对象的共享所有权是否是糟糕设计的标志?

背景:在阅读Dr. Stroustrup 的论文和常见问题解答,我注意到一些来自传奇 CS 科学家和程序员的强烈“意见”和很好的建议。其中之一是关于 C++0x 中的…

半﹌身腐败 2024-08-16 05:24:44 3 0

在 C# 中使用 RAII 安全吗?还有其他垃圾收集语言吗?

我正在制作一个 RAII 类,它接受 System.Windows.Form 控件并设置其光标。在析构函数中,它将光标设置回原来的位置。 但这是一个坏主意吗?我可以放心…

晨与橙与城 2024-08-11 13:26:30 4 0

DuplicateHandle 的价格

我正在编写一个类库,它为 C API(即 Windows 注册表)提供方便的面向对象前端。然而,我很好奇处理 HREG 的最佳做法是什么,例如复制我的 key 类。 …

烟燃烟灭 2024-08-11 04:36:08 3 0

向句柄包装器添加功能

我有一个 C++ RAII 类,用于使用 boost::shared_ptr&lt&gt 管理 Win32 HANDLE看起来有点像这样: namespace detail { struct NoDelete { void operato…

鲜肉鲜肉永远不皱 2024-08-10 19:47:29 4 0

如何修复堆损坏

我尝试构建一个非常简约的内存读取库来从中读取一些unsigned int。但是,当 ReadUnsignedInt 方法想要返回时,我遇到了“HEAP CORRUPTION DETECTED”…

巴黎夜雨 2024-08-08 15:25:15 2 0

使用带有自定义删除器的shared_ptr使HANDLE RAII兼容

我最近在 SO 上发布了有关 RAII 的一般问题。 但是,我的 HANDLE 示例仍然存在一些实现问题。 HANDLE 在 windows.h 中被类型定义为 void *。因此,正…

掌心的温暖 2024-08-07 20:38:38 8 0

使非对象资源符合 RAII 标准

在我的代码中,我使用 windows.h 中的 HANDLE。它们的使用方式 HANDLE h if (!openHandleToSomething(arg1, arg2, &amph)) { throw std::exception("o…

末骤雨初歇 2024-08-07 17:38:33 8 0

是否可以防止 RAII 样式的类被“匿名”实例化?

假设我有一个 RAII 风格的 C++ 类: class StateSaver { public: StateSaver(int i) { saveState() } ~StateSaver() { restoreState() } } ...在我的…

情话难免假 2024-08-05 09:48:20 6 0

局部变量作用域问题

为什么下面的代码打印“xxY”?局部变量不应该存在于整个函数的范围内吗?我可以使用这样的行为吗?或者这会在未来的 C++ 标准中改变? 我认为根据 C+…

音栖息无 2024-08-04 05:48:26 2 0

在逗号运算符的 LHS 中初始化匿名互斥锁持有类实例

假设我有这样的代码: #include "boost/thread/mutex.hpp" using boost::mutex typedef mutex::scoped_lock lock mutex mut1, mut2 void Func() { // …

雨轻弹 2024-08-03 17:34:46 2 0

是否有可能杀死 C++ Windows XP 上的应用程序无需展开调用堆栈?

我的理解是,当您在 Windows XP 中通过任务管理器终止 C++ 应用程序时,该应用程序仍然“干净”地被破坏 - 即调用堆栈将展开并且所有相关的对象析构函…

金兰素衣 2024-08-02 10:41:24 3 0

在 C++ 中不使用括号类的原因可能是什么?

通常需要完成以下任务:更改某物的状态,执行操作,然后将状态更改回原始状态。 例如,在 Win32 GDI 中,需要更改背景颜色,然后进行一些绘图,然后将…

请爱~陌生人 2024-08-01 20:07:59 3 0

C++ RAII 不工作?

我刚刚开始使用 C++ 中的 RAII 并设置了一个小测试用例。 要么我的代码非常混乱,要么 RAII 不起作用! (我猜是前者)。 如果我运行: #include &lte…

把昨日还给我 2024-07-26 01:57:08 3 0

RAII 和未初始化的值

只是一个简单的问题: 如果我有一个简单的向量类: class Vector { public: float x float y float z } RAII 概念也适用于此吗? 即提供一个构造函数…

好久不见√ 2024-07-17 05:04:35 6 0
更多

推荐作者

花开柳相依

文章 0 评论 0

zyhello

文章 0 评论 0

故友

文章 0 评论 0

对风讲故事

文章 0 评论 0

Oo萌小芽oO

文章 0 评论 0

梦明

文章 0 评论 0

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