2006-03-20 暗黙の型変換 C++ 昨日の、 CBase obj = 1; の件はC++でいう『暗黙の型変換』でした。つまりクラス側では、クラス自身を引数にとる『代入演算子』がオーバーロードされていました。 授業でやっていたのに、さっぱり忘れていたのでメモ。 コンパイルの考え(クラスはCBaseとする) 『unsigned int 型』を引数にとる『= 演算子』はないので、そのままでは代入できない 『unsigned int 型』を引数にとる『コンストラクタ』を発見する 『CBase 型』を引数にとる『= 演算子』を発見する 以上より、『unsigned int 型』を引数にとって『CBase 型オブジェクト』を作成し、『= 演算子』で代入する とのことです。