簡體   English   中英

我認為這是C ++ 11標准中的(次要)缺陷

[英]I believe this to be a (minor) defect in the C++11 Standard

我認為這是C ++ 11標准中的(次要)缺陷。 在[dcl.dcl]中我們有:

簡單聲明

decl-specifier-seq opt init-declarator-list opt ;

decl-specifier-seq不能是可選的。

例如,下面的代碼片段無法編譯:

x;

如果我在這里是正確的,那么第8.3 / 1段的開頭也應該改變:

從:

聲明列表出現在可選(第7節) decl-specifier-seq (7.1)之后。

至:

decl-specifier-seq (7.1)之后出現一個聲明列表。

評論太久了

在第7條第3款中:

在一個簡單聲明中 ,只有在聲明一個類(第9節)或枚舉(7.2)時,也就是說,當decl-specifier-seq包含一個類說明符時 ,可以省略可選的init-declarator-list詳細說明-type-specifier ,帶有類鍵 (9.1)或枚舉說明符 在這些情況下,只要在decl-specifier-seq中存在類說明符枚舉說明符,這些說明符中的標識符就是聲明聲明的名稱 (作為類名枚舉名枚舉符,取決於語法)。 在這種情況下,除了聲明未命名的位字段(9.6)之外, decl-specifier-seq應在程序中引入一個或多個名稱,或者重新聲明由先前聲明引入的名稱。

並在第7條第9款中

只有在構造函數,析構函數和類型轉換的函數聲明中,才能省略decl-specifier-seq

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM