C++ 参照のダメな使い方

Last-modified: 2007-03-29 (木) 19:41:14

関数の引数が参照

たとえば、こんなコードがあったとする。

int a;
function(a);
cout << a << endl;

どうみたって、初期化されていない。
だけど、functionの宣言は次のように参照が使われているので
上記のコードは問題がない、というわけです。

void function(int & a);

わかりにくくなるので、やめましょう。
ソースコード追えばいいとか、そんな手間を掛けること自体勿体ないです。

関数の戻り値が参照

たとえばこんなコード。

int & function(void)
{
	int a = 0;
	return a;
}

これは完全にダメ。コンパイルエラーのはず。