定义嵌套模板的法律语法是什么?
What's the legal syntax to define nested template?
我有以下嵌套模板
class A {
template <typename T> class B {
template <typename U> void foo(U arg);
};
};
我试图定义嵌套模板,像这样:
template <typename T, typename U> void
A::B<T>::foo(U arg) {...}
但是我得到declaration is incompatible with function template
错误。这样做的法律语法是什么?
你需要把模板声明分开:
template <typename T>
template <typename U>
void
A::B<T>::foo(U arg) { … }
相关文章:
- C++避免重复声明的语法是什么
- 使用基类指针调用基类的值构造函数的语法是什么?
- 这行/语法是什么意思?
- 初始化对象以在 C++08 中作为参数传递的首选语法是什么?
- 将引用绑定到指针的语法是什么?(各种)
- 这个typedef和转换运算符语法是什么意思
- 此语法是什么意思.(::*).
- 将显式指定的函数模板重载作为模板参数传递的正确语法是什么?
- 使用 pybind11 绑定 typedef 类型的正确语法是什么?
- 将此类传递给引用的正确语法是什么?
- 带有约束的可变参数模板的'requires'表达式的语法是什么?
- 在TensorFlow C++中用于feed_dict的语法是什么?
- 调用模板化类内的枚举类枚举器的正确语法是什么
- 返回没有 typedef 的成员函数指针的语法是什么?
- 将强制转换运算符重载到 std::map 的正确语法是什么
- 这种增量语法是什么意思
- 返回结构的方法的正确语法是什么
- C 中的(*)语法是什么意思
- 堆栈(int = 10),这个语法是什么意思(C++)
- variadic模板阵列参考参数的语法是什么?