基本に立ち返ってC++の復習です。
個人的にあんまり使わない機能のコピーコンストラクタ&代入演算子の使い方。
独習C++のサンプルをちょこっと変えてコードを書いてみました。
これらの機能の使い時はメンバにポインタが含まれていて、
参照先が同じ値(アドレス)でコピーされちゃまずいよってとき。
JavaにもC#にもある機能ですね。
コピーされるときはオブジェクト同士で=が使われたときやあんまりないけど、
オブジェクトが引数に値渡し(いわゆる参照渡しやアドレス渡しでないとき)で渡されたとき。
値渡しって言葉はここでは上記の意味で、C++は厳密にいうと全部値渡しなので。
うーん、C++の例外ってもっとお手軽にかっこよく使えないかな…
まぁ、あんまり使わないからいいっか。
コピーコンストラクタ&代入演算子のオーバーロード復習
スポンサードリンク