double x = 0,1;
コンパイルされません (MSVC9.0 で試します)。エラーは
C2059 syntax error : 'constant'
ポイントの代わりにコンマがあることは認識していますが、上記の行は次のように解釈されるべきではありませんか?
double x = (0,1); //which is double x = 1;
ちなみに、初期化は括弧を使用して正常にコンパイルされます。
operator ,
よりも優先順位が低い線に沿って考えてoperator =
いましたが、この場合=
は演算子がないため、これは問題になりません。それを決定する構文規則は何か
double x = 0,1;
違法であるべき?