在C++ 11標準其描述type-name
和class-name
具有以下語法:非簡單模板標識的非類名C++ 11類型名稱?
type-name:
class-name
enum-name
typedef-name
simple-template-id <--- HERE
class-name:
identifier
simple-template-id
我的問題是關於simple-template-id
那就是type-name
的嫡系。
是否有可能有一個simple-template-id
這是一個type-name
但不是class-name
?
例如,如果foo<bar>
命名一個類型,它可以永遠是非類類型嗎?
(如果答案是否定的,是有我丟失爲什麼simple-template-id
是type-name
下重複其他原因?)
當你引用標準,通常最好包括部分編號或段落名稱(該部分右上方的[[something.something]),以便其他人可以找到您正在談論的內容,以防他們需要/需要更多上下文。 – 2013-04-25 04:11:57
@JerryCoffin:在標準的後面有一個「語法產品索引」,它給出了正文中提到的特定語法的頁碼,以及它在附件A語法總結中的位置 - 但是我認爲答案不能在本地找到特定部分(或者至少不在本地提及這些語法的地方)。 – 2013-04-25 04:18:18