静态模板成员的嵌套静态模板成员
Nested static template member of static template member
>假设我有一个包含嵌套模板类的静态成员的类:
class Host
{
public:
template<char X>
class Child {
};
static Child<'A'> childA;
};
好吧,也许有点非常规,但足够简单。 我可以在 CPP 文件中定义静态成员的实例,因此:
Host::Child<'A'> Host::memberA;
现在;假设 "Child" 类还包含其自己的嵌套模板类的静态成员:
class Host
{
public:
template<char X>
class Child
{
public:
template<int Y>
class Subchild {
};
static Subchild<1> submember01;
};
static Child<'A'> memberA;
};
我将如何定义静态模板成员的静态模板成员? 我试过:
Host::Child<'A'>::Subchild<1> Host::Child<'A'>::submember01;
但我收到编译器错误:
"specializing member "Host::Child<X>::submember01 [with X=(char)'A']" requires "template<>" syntax"
这是使用 ARM 编译器发生的,但我在 Visual Studio 中没有收到此错误。
怎么样:(使用template<>
语法(
template<>
Host::Child<'A'>::Subchild<1> Host::Child<'A'>::submember01;
相关文章:
- 如果C++类在类方法中具有动态分配,但没有构造函数/析构函数或任何非静态成员,那么它仍然是POD类型吗
- 静态数据成员的问题-修复链接错误会导致编译器错误
- 将公共但非静态的成员函数与ALGLIB集成
- 私有类型的静态常量成员
- 如何在C++中使用非静态成员函数作为回调函数
- (C++)为什么静态成员可以在初始化之前使用
- 添加静态constexpr成员是否会更改结构/类的内存映射
- 静态数据成员模板专用化的实例化点在哪里
- 在派生类中绑定非静态模板化成员函数
- 类的全局对象和静态成员
- 在作为静态成员包含在另一个类中的类的构造函数中使用 cout
- 模板化类中静态成员的延迟初始化
- 枚举成员与静态 int 成员?
- 使用静态成员声明类时遇到问题
- C++ 模板类型的静态 lambda 成员的构造
- 初始化与类类型相同的静态成员(静态初始化顺序问题)
- 成员静态回调函数的外部"C"
- 成员静态函数中的C++静态变量
- 将pthread_mutex_t和pthread_cond_t作为类成员静态变量的任何缺点
- 初始化私有成员静态常量数组