私は C++ スマート ポインターに非常に慣れていないため、関数の引数にスマート ポインターを使用することに関するこのアドバイスを理解するのに苦労しています。
「C++ Coding Standards: 101 Rules, Guidelines, and Best Practices」では、これらがスマート ポインターを渡す理由であると述べています。
(スマート) ポインターによる受け渡しを優先する
- 引数がオプションの場合 (呼び出し元は null を「使用不可」または「無視」値として渡すことができます)
- または、関数がポインターのコピーを格納する場合
- または、引数の所有権を操作します。
誰かがそれらのそれぞれの例を教えてもらえますか?その場合、スマートポインターを使用しないのはなぜですか?