C++模板值初始化
如何让模板中的内置类型默认值初始化。如,std模板vector中,可以对各种类型进行值初始化,vector<int>初始化为0等等。...
如何让模板中的内置类型默认值初始化。
如,std模板vector中,可以对各种类型进行值初始化,vector<int>初始化为0等等。 展开
如,std模板vector中,可以对各种类型进行值初始化,vector<int>初始化为0等等。 展开
1个回答
2015-11-01
展开全部
template <typename T>
T value_inited() {
T x = T();
return x;
}
即使 T 不是类类型,T() 也仍然是合法的,结果就是 value-initialization 的结果
C++11也可以用
T x{};
好处是这样可以兼容不可复制的类对象
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询