gpt4 book ai didi

c++ - 通过构造函数和析构函数实现 RAII 是否被认为是错误的 'Modern C++'?

转载 作者:太空狗 更新时间:2023-10-29 23:32:28 24 4
gpt4 key购买 nike

随着 C++ 中智能指针的出现,通过构造函数和析构函数手动实现 RAII 是否被认为是糟糕的“现代 C++”实践?或者是否有仍然相关的应用程序?

最佳答案

通过分配,内存不是唯一可以获取的资源,因此指针不是 RAII 的唯一类型。

例如,考虑一个作用域锁:

template <class Lockable>
class lock_guard {
Lockable& lck;
public:
lock_guard(Lockable& lck)
: lck(lck)
{
lck.lock();
}

~lock_guard()
{
lck.unlock()
}
};

没有指针。还是RAII。仍然 Shiny 、现代且 super 有用。

关于c++ - 通过构造函数和析构函数实现 RAII 是否被认为是错误的 'Modern C++'?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39261862/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com