Python
Java
PHP
IOS
Android
Nodejs
JavaScript
Html5
Windows
Ubuntu
Linux
C++ 支持“finally”块吗? (我经常听到的“RAII”是什么?)
C 是否支持 finally http java sun com docs books tutorial essential exceptions finally html 块 是什么RAII 习语 http en wikipedia or
c
Exception
RAII
finally
cfaq
是否可以在不展开调用堆栈的情况下终止 Windows XP 上的 C++ 应用程序?
我的理解是 当您在 Windows XP 中通过任务管理器终止 C 应用程序时 该应用程序仍然 干净 地被破坏 即调用堆栈将展开并且所有相关的对象析构函数将被调用 不知道我这里的理解是否有误 是否可以立即终止这样的应用程序而不展开堆栈 例如
c
process
WindowsXp
callstack
RAII
是否有比嵌套“使用”更好的确定性处置模式?
在 C 中 如果我想确定性地清理非托管资源 我可以使用 using 关键字 但对于多个依赖对象 这最终会嵌套得越来越深 using FileStream fs new FileStream c file txt FileMode Open
c
Using
RAII
是否可以在不同的类中编写/包装异常处理组件(try、catch)?
这是关于将异常处理逻辑包装在某种类中 在写c 的时候 代码中 很多时候我们需要根据客户端抛出的异常来捕获许多类型 变体 这导致我们在 catch 子句中 多次 编写类似类型的代码 在下面的示例中 我编写了 function 它可以以多种可能
c
C11
Exception
RAII
为什么 C++ 中的析构函数以与初始化相反的顺序取消分配内存?
以与变量相反的顺序取消分配内存有什么好处 考虑这个例子 Type1 Object1 Type2 Object2 Object1 假设Object2使用一些内部资源Object1并且只要Object1已验证 例如 Object2s 析构函数访
c
memorymanagement
destructor
RAII
释放分配的内存
这是好的做法吗 或者我应该替换之间的代码块 and 有一个功能 它可以重复使用 我承认 但我这样做的唯一动机是取消分配colsum因为它是huge并且不需要这样我就可以释放分配的内存 vector
c
RAII
计算出的“goto”是否尊重 C++ 对象的生命周期?
Regular goto在 C 中尊重对象生命周期 即使用goto跳出块将为适当的局部变量运行析构函数 start NonTrivial object if again goto start will call object NonTriv
c
gcc
goto
RAII
如何让 Rust 单例的析构函数运行?
这些是我所知道的在 Rust 中创建单例的方法 macro use extern crate lazy static use std sync Mutex Once ONCE INIT derive Debug struct A usize
singleton
Rust
RAII
OCaml 对应于 Python 的“with”语句(自动释放资源)是什么?
OCaml 中与 Python 的 with 语句相对应的是什么 with open test txt r as f Do stuff with f At this point f will always be closed even in
python
ocaml
withstatement
RAII
当本机 (C++) 异常传播到 CLR 组件时不会调用析构函数
我们有大量的本机 C 代码 已编译成 DLL 然后我们有几个包含 C CLI 代理代码的 dll 来包装 C 接口 最重要的是 我们有 C 代码调用 C CLI 包装器 标准的东西 到目前为止 但在很多情况下 本机 C 异常被允许传播到 N
NET
Exception
CCLI
destructor
RAII
在 C++11 的析构函数中锁定互斥体
我有一些代码需要线程安全和异常安全 下面的代码是我的问题的一个非常简化的版本 include
c
threadsafety
destructor
RAII
exceptionsafety
是否有一个 C++ 标准类可以在作用域退出时将变量设置为值
在成员函数的范围内 我想临时将成员变量设置为某个值 然后 当这个函数返回时 我想将此成员变量重置为给定的已知值 为了避免异常和多次返回 我用一个简单的 RAII 类来完成它 它是在成员函数的范围内定义的 void MyClass MyMem
c
Return
RAII
exceptionsafety
堆栈分配的 RAII 对象与 DI 原理
在 C 中 我经常使用 RAII 风格的对象来使代码更可靠 并将它们分配在堆栈上以使代码更具性能 并避免 bad alloc 但是在堆栈上创建具体类的对象违反了依赖倒置 DI 原则并阻止了模拟该对象 考虑以下代码 struct IInput
c
unittesting
dependencyinjection
RAII
使用 c++ std::unique_ptr<> 或 std::shared_ptr<> 管理 Objective-C 对象
Objective C 可以在某种程度上与 C 混合 可以互相打电话 https stackoverflow com q 1061005 1792701 但 Objective C 对象仍然或多或少是手动管理的 并且 RAII 习惯用法在该
c
Objectivec
memorymanagement
RAII
5 规则(针对构造函数和析构函数)是否已经过时?
5 规则指出 如果一个类具有用户声明的析构函数 复制构造函数 复制赋值构造函数 移动构造函数或移动赋值构造函数 则它必须具有其他 4 个 但今天我突然意识到 什么时候需要用户定义的析构函数 复制构造函数 复制赋值构造函数 移动构造函数或移动
c
smartpointers
RAII
resourcemanagement
资源获取即初始化 (RAII) 是什么意思?
资源获取即初始化 RAII 是什么意思 对于一个极其强大的概念来说 这是一个非常糟糕的名字 而且也许是 C 开发人员在转向其他语言时最容易错过的事情之一 有一些运动试图将这个概念重新命名为范围限制的资源管理 尽管它似乎还没有流行起来 当我们
c
RAII
依赖 Windows 句柄的类型作为指针可以吗?
Windows 句柄有时很烦人 需要记得在之后进行清理 使用创建的笔和画笔执行 GDI 就是一个很好的例子 RAII 解决方案很棒 但是为每种不同类型的手柄制作一个完整的 五规则 RAII 类真的那么好吗 当然不是 我能看到的最好的结果是一
c
Windows
C11
handle
RAII
Python 中的 RAII:__del__ 有什么意义?
乍一看 好像是Python的 del 特殊方法提供了与 C 中析构函数几乎相同的优点 但根据Python文档 https docs python org 3 4 reference datamodel html https docs pyt
python
RAII
术语的含义 - 资源获取就是初始化
我知道 RAII 是做什么的 这都是为了在代码抛出异常时防止内存泄漏等 现在我想明白这句话的意思smart term http en wikipedia org wiki 收购 http en wikipedia org wiki Acqu
c
OOP
terminology
RAII
控制反转和 RAII 可以一起发挥作用吗?
我刚刚阅读了有关控制反转 IOC 的内容 这让我很困扰 它似乎让内存管理变得很痛苦 当然 ioc 似乎主要用于垃圾收集环境 Net Java Scripting 而我关心的是非 gc 设置 我在这里担心的是 IOC 在某种程度上违背了 RA
inversionofcontrol
RAII
1
2
»