1

初めて、C++ でスマート ポインターを使用しています。について質問がありstd::shared_ptrます:

  1. 参照によってポインターを設定します。

    MyToy mytoy_1, mytoy_2;
    set_mytoy(mytoy_1, some_data);
    set_mytoy(mytoy_2, some_data); 
    
    shared_ptr<MyToy> ptr_mytoy(&mytoy_1);
    
  2. リセットと新しい割り当て:

    ptr_mytoy.reset(&mytoy_2);
    
  3. 代入なしでリセット:

    ptr_mytoy.reset();
    
  4. セットNULL(?):

    ptr_mytoy(nullptr);
    

これらの例は正しいですか?

スマート ポインターが「空」 (たとえば、後.reset()) かどうかを確認するにはどうすればよいですNULLか?

4

1 に答える 1