我希望有一个看起来像这样的课程:
template <typename T>
class foo
{
public:
template <typename S>
foo()
{
//...
}
};
Run Code Online (Sandbox Code Playgroud)
但我无法弄清楚如何调用构造函数.显然,我可以通过给foo()一个S类型的参数来完成这项工作,但它可以在没有任何参数的情况下完成吗?
--Ron
您不能将模板参数显式传递给构造函数模板。构造函数没有名字(让我们不要进入文字游戏)。然而,这并不意味着你不能完成你想要完成的任何事情。您可以通过S类模板参数传入,或者在构造函数中采用标签函数参数进行推导S。或者促进工厂功能。