C++ 在C++?

C++ 在C++?,c++,pointers,C++,Pointers,我在一次采访中被问到这个问题。看起来boost库有一个称为作用域指针的东西。不确定他是否问过。 < P>这个词最可能指的是C++类,它为指针提供了范围内的所有者管理。 < P>这个词最有可能指的是C++类,它为指针提供了范围内的所有者管理。 < P>Boost确实有 SpopeDPPTR Boost文档 使用作用域_ptr而不是自动_ptr的主要原因是让代码的读者知道您打算“资源获取是初始化”>只应用于当前作用域,而不打算转移所有权 使用scoped_ptr的第二个原因是防止以后的维护程序员添

我在一次采访中被问到这个问题。看起来boost库有一个称为作用域指针的东西。不确定他是否问过。

< P>这个词最可能指的是C++类,它为指针提供了范围内的所有者管理。

< P>这个词最有可能指的是C++类,它为指针提供了范围内的所有者管理。

< P>Boost确实有<代码> SpopeDPPTR Boost文档

使用作用域_ptr而不是自动_ptr的主要原因是让代码的读者知道您打算“资源获取是初始化”>只应用于当前作用域,而不打算转移所有权

使用scoped_ptr的第二个原因是防止以后的维护程序员添加通过返回auto_ptr来转移所有权的函数,因为维护程序员看到auto_ptr,并且假定的所有权可以安全地转移

Po>认为BoL vs int。我们都知道,在BooL下通常是一个int。确实,一些人反对将BoL包含在C++标准中。但通过编写布尔而不是int,您可以告诉读者您的意图。与作用域ptr相同;通过使用它,你是在传达意图

有人建议作用域_ptr等同于std::auto_ptr const。然而,Ed Brey指出,重置在std::auto_ptr常量上不起作用


Boost确实有一个
作用域\u ptr

Boost文档

使用作用域_ptr而不是自动_ptr的主要原因是让代码的读者知道您打算“资源获取是初始化”>只应用于当前作用域,而不打算转移所有权

使用scoped_ptr的第二个原因是防止以后的维护程序员添加通过返回auto_ptr来转移所有权的函数,因为维护程序员看到auto_ptr,并且假定的所有权可以安全地转移

Po>认为BoL vs int。我们都知道,在BooL下通常是一个int。确实,一些人反对将BoL包含在C++标准中。但通过编写布尔而不是int,您可以告诉读者您的意图。与作用域ptr相同;通过使用它,你是在传达意图

有人建议作用域_ptr等同于std::auto_ptr const。然而,Ed Brey指出,重置在std::auto_ptr常量上不起作用


“范围指针”还是“范围指针”?指针不能处理范围,所以SCOMPEDYPTR听起来像是合理的假设。“C++中的范围指针是什么?”——这是逐字地问的问题吗?我猜不是,我猜他们是在问智能指针和RAII(也许是代码> STD: UNIQUYGPTR < /CUT>),值得阅读:“范围指针”或“范围指针”?一个指针不能处理范围,所以SCOMPEDY-PTR听起来像是合理的假设。“什么叫做C++中的范围指针?”这是逐字逐句问你的问题吗?我猜不是,我猜他们问的是一般的智能指针和RAII(可能是
std::unique_ptr
特别的)…值得一读: