C++ 类模板中没有扣减 模板 A类{ 公众: A(tb):A(b){ } 私人: Tα; }; 物体(12)//为什么会出现错误?
为什么不能从参数C++ 类模板中没有扣减 模板 A类{ 公众: A(tb):A(b){ } 私人: Tα; }; 物体(12)//为什么会出现错误?,c++,templates,C++,Templates,为什么不能从参数12自动推断类型t?仅适用于函数和成员函数模板,而不适用于类模板。因此,您的代码格式不正确 您需要显式地提供模板参数 template<typename T> class A { public: A(T b) : a(b) { } private: T a; }; A object(12); //Why does it give an error? 对象(12)//好的 @litb:但是如果没有人能找到原始版本,那么
12
自动推断类型t?仅适用于函数和成员函数模板,而不适用于类模板。因此,您的代码格式不正确
您需要显式地提供模板参数
template<typename T>
class A {
public:
A(T b) : a(b) {
}
private:
T a;
};
A object(12); //Why does it give an error?
对象(12)//好的
@litb:但是如果没有人能找到原始版本,那么给搜索引擎第二口樱桃也许是个好主意。请注意,类模板的模板参数推断可能会包含在C++17中:
A<int> object(12); //fine