Pra*_*rav 0 c++ templates class-constructors
我的代码没有编译.以下是我的代码
template <typename T>
class TemplateClass
{
const T constMember;
public:
TemplateClass()
{
constMember = T();
}
};
int main()
{
TemplateClass <int> obj;
}
Run Code Online (Sandbox Code Playgroud)
我收到此错误:
error: uninitialized member 'TemplateClass<int>::constMember' with 'const' type 'const int'
我以为构造函数用于初始化数据成员.怎么了????
Pra*_*rav 11
你没有初始化const成员,你只是分配给它.
成员的初始化只能使用成员初始化列表来完成.
例如:
TemplateClass() : constMember(T()) //initializes constMember to 0
{}
Run Code Online (Sandbox Code Playgroud)