其中是C++11中boost::shared_polymorphic_download的std等效值

Where is the std equivalent of boost::shared_polymorphic_downcast in C++11?

本文关键字:std download polymorphic C++11 boost shared      更新时间:2023-10-16

boost::shared_polymorphic_downcast和其他boost::shared_ptr函数位于<boost/shared_ptr.hpp>

我最近用-std=c++0x在GCC中启用了对C++11的支持。为了避免混淆,我从boost::shared_ptr移到了位于#include <memory>中的std::shared_ptr

然而,shared_polymorphic_downcast似乎不是std名称空间的一部分,并且不包括在#include <memory>中。

你知道它在哪里吗?我错过了贬低备忘录了吗;-)

您需要std::static_pointer_caststd::dynamic_pointer_cast,这取决于您想要static_cast还是dynamic_cast行为。

Boost的智能指针库的最新版本也包含了boost::shared_ptr的这些函数。