shared_ptr メンバー変数を初期化する場合:
// .h
class Customer
{
public:
Customer();
private:
std::shared_ptr<OtherClass> something_;
}
// .cpp
Customer():
something_(new OtherClass())
{
}
対。
Customer():
something_(std::make_shared<OtherClass>())
{
}
make_shared バージョンは使用できますか? いつも最初のバージョンが表示されるようですが、どちらが優先されますか?