匿名インスタンスの作成で以前に宣言された変数を使用すると、g++ で再宣言エラーが発生します。
「weird.cpp」ソース ファイルに次のコードがあります。
#include <iostream>
int main()
{
int i = 0;
int j = int ( i );
int ( i );
}
私が得ているエラーは、
weird.cpp: In function ‘int main()’:
weird.cpp:7: error: redeclaration of ‘int i’
weird.cpp:5: error: ‘int i’ previously declared here
私は、それぞれバージョン 4.2 と 4.7 の mac と linux でこれを試しました。int の代わりに他の型も試しました。結果は同じエラーです。誰でもこの問題を理解するのを手伝ってもらえますか? ありがとう。