std::string s = t;
この後、sとtは同じアドレスを指していると思います。
一度t
削除すると、s
空にもなります。ディープ コピーを作成するにはどうすればよいですか?
std::string s = t;
この後、sとtは同じアドレスを指していると思います。
一度t
削除すると、s
空にもなります。ディープ コピーを作成するにはどうすればよいですか?
免責事項:t
も であると想定しstd::string
ています。間違っている場合は訂正してください。
この後、sとtはアドレスを指していると思います。
それらはポインターではありません。
t が削除されると、s も空になります
t
削除できないか、削除した場合、それが問題です。削除しないでくださいt
。自動的に範囲外になります。
コードでは、std::string
のコピー コンストラクターを使用します。これは、名前が示すように、元の文字列のコピーを作成します。
これは正しくありません。文字列の完全に別のコピーです。一方が削除されても、もう一方はまだ存在します。代入演算子はまさにこれらをコピーする方法です。