当在另一个类中使用Templated类实例作为成员变量时,需要类型说明符
Expect a type specifier when Templated class instance used in another class as member variable
我有两个类A和B。A是模板类,它有一个带整数参数的构造函数。另一个类B使用带有int模板参数的A的实例。现在的问题是,当我编译程序时,它显示预期类型。
这是程序。
template <typename T>
class A
{
public:
A(std::size_t max_size)
{
}
};
class B
{
A<int> list(100);
};
我在中遇到编译问题
A<int> list(100);
行。
提前谢谢。
当编译器解析行时
A<int> list(100);
它认为您正在尝试声明一个名为list
的函数,该函数的返回类型为A<int>
。它试图解析副题中的内容,以找到参数类型、默认值等。它希望找到一个类型,但却找到了一个数字
我猜你是想用
A<int> list[100];
其声明CCD_ 3是100个CCD_
如果要使用100
作为A<int>
构造函数的参数,则必须使用:
class B
{
B() : list(100) {}
A<int> list;
};
更改此
A<int> list(100);
例如
A<int> list<int> li(100);
i-e提供一种类型(这里我提到了int
)
相关文章:
- 将成员变量添加到共享库中的类中,不会破坏二进制兼容性吗
- 具有奇怪重复模板模式的派生类中的成员变量已损坏
- C++预处理会生成变量成员、资源库和映射
- 局部堆栈变量成员的返回值优化
- Google Mock:在目标类的构造函数中实例化的模拟私有变量成员
- 使用指向结构变量成员的指针访问该结构的成员的地址
- 如果派生类仅包含自动变量成员,是否有必要具有虚拟驱动器
- 线程安全性和静态变量/成员功能
- "static const char array"可以在 C 语言上包含变量成员吗
- 仅用于内部目的的类的所有变量/成员的技术术语是什么
- 如何强制转换变量成员以将其作为函数的引用参数传递
- 类中未声明变量成员函数
- 在 main 中初始化类的 "static const" 类型变量成员的更好方法
- c++模板类静态const变量成员作为映射键给出未定义引用
- 在类中初始化结构变量成员会导致分割错误
- 在c++中建模变量成员类型
- 模板私有静态变量成员的未定义符号
- 不能访问公共静态变量成员
- 常量变量成员在C++有什么用?
- g++ 4.8.2坚持简单变量成员是数组