承担第二,我们有boost :: shared_ptr默认构造会导致成员函数消失?
#include <boost/shared_ptr.hpp>
#include <iostream>
int main()
{
boost::shared_ptr<int> bleah(); //default constructor
cout << bleah.get() << endl; //error line
boost::shared_ptr<int> barf(new int (10));
cout << *barf.get() << endl; //outputs 10 as normal.
}
如何走到这一步不能编译? 就好像函数shared_ptr :: get突然从变量“bleah”的类定义中消失了一样。 我确定有一个原因,但目前我看不到它。
搜索:伤脑筋解析 – Nim