And*_*zos 4 c++ templates c++11
在C++ 11标准它描述type-name和class-name具有以下语法:
type-name:
class-name
enum-name
typedef-name
simple-template-id <--- HERE
class-name:
identifier
simple-template-id
Run Code Online (Sandbox Code Playgroud)
我的问题是关于simple-template-id那是直系后裔type-name.
是否有可能拥有simple-template-id一个type-name但不是一个class-name?
例如,如果foo<bar>名称是一个类型,它可以是非类型吗?
(如果答案是否定的,是否有其他原因我错过了为什么simple-template-id重复type-name?)
有可能,例如:
template <typename T> using Ptr = T *;
Ptr<int> p = 0;
Run Code Online (Sandbox Code Playgroud)