shared_ptr コピー コンストラクターについて混乱があります。次の 2 行を検討してください。
これは、shared_ptr オブジェクトへの「定数」参照であり、別の shared_ptr オブジェクトが初期化されるようにコピー コンストラクターに渡されます。
コピー コンストラクターは、メンバー データ (「参照カウンター」) もインクリメントすることになっています。これは、すべての shared_ptr オブジェクト間で共有されます。これは、各 shared_ptr オブジェクトにまだいくつあるかを伝える整数への参照/ポインターであるためです。生きている。
しかし、コピー コンストラクターが参照カウント メンバー データをインクリメントしようとすると、参照渡しされた shared_ptr の const-ness に「ヒット」しませんか? または、コピー コンストラクターは const_cast 演算子を内部的に使用して、引数の const-ness を一時的に削除しますか?