返された参照はいくらかのガベージ値を参照するので、私はリファレンスを返すことが悪いと思っていました。しかし、このコードは動作します(matrix
はクラスである):リファレンスを返すことはできますか?
const int max_matrix_temp = 7;
matrix&get_matrix_temp()
{
static int nbuf = 0;
static matrix buf[max_matrix_temp];
if(nbuf == max_matrix_temp)
nbuf = 0;
return buf[nbuf++];
}
matrix& operator+(const matrix&arg1, const matrix&arg2)
{
matrix& res = get_matrix_temp();
//...
return res;
}
buf
はここにやって、どのようにそれがゴミ値を有するから私たちを救うんは何?
スペースには何がありますか? –
'matrix&res max_matrix_temp();'それはコンパイルさえしますか? –
[静的変数](http://en.wikipedia.org/wiki/Static_variable) –