copy constractor

今月号のCマガジンの特集「危険なコーディング癖を排除せよ オブジェクト指向*1」のコピーコンストラクタところで「コピーコンストラクタがあるのは実行効率の」とか書いてありましたが。
コピーコンストラク*2がなければ「引数の値渡し」の時に=演算子オーバーロード使うことになるのですが。
=が出てこないところで=演算子オーバーロードが呼び出される方がわかりにくいと思うのはワタシだけ?
あと、コピーコンストラクタでの値の代入先は未初期化の状態であるというのがはじめからわかっているので
メモリ確保済みチェックと破棄をする必要がないことも=演算子オーバーロードとの違いだと思う。

*1:どちらかと言えばC++編の方が近いような気がする

*2:ついでにコピーコンストラクタはプログラマが定義しなくても値渡しのみを行うモノを自動で定義してくれる。値渡ししかしないところがミソ