2012-09-06 88 views
0

爲什麼我不能在C++ 98/C++ 03聚合初始化程序列表末尾使用額外的逗號?在C++ 98/C++ 03聚合結尾的額外逗號03

ISO/IEC 14882:2003

8.5初始化器[dcl.init]

=初始化子句(表達式列表)初始化子句:賦值表達式{初始化列表,選擇} {}初始化列表: 初始化子句初始化列表,初始化子句

有後初始化列表與選擇符額外逗號, 對?爲什麼我不能使用它?

+1

你是什麼意思,你不能? –

+1

顯示代碼示例 – Maxwe11

+2

http://ideone.com/IksDt –

回答

2

這裏的標準很清楚:尾隨的逗號允許的(類似的特徵存在於枚舉內的常量聲明中)。您無法使用它的事實是您使用的實施質量的問題。

+0

因此,在C89/C90,C99,C11,C++ 98,C++ 03和C++ 11中允許在數組末尾附加逗號,但只能在枚舉初始化列表末尾附加逗號C99,C11和C++ 11? – FrozenHeart