在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