c++ - 以参数为默认值的构造函数

标签 c++ constructor default-constructor

我的代码是

template <class T1, class T2>
class MyClass
{

    T1 first;
    T2 second;
    public:
    //default constructor
    MyClass():first(T1()), second(T2()) {}
}

我想要一个可以接受 0、1 或 2 个参数(默认参数)的构造函数。这里 T1 和 T2 既可以是原始类型,也可以是非原始类型。

最佳答案

用这个构造函数替换你现有的构造函数:

MyClass(const T1& t1 = T1(), const T2& t2 = T2()):first(t1), second(t2) {}

关于c++ - 以参数为默认值的构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17869325/

相关文章:

c++ - 使用 estimateRigidTransform 而不是 findHomography

c++ - 定义一个类的成员函数?

c++ - 什么是 "balanced-token-seq"

c++ - 变量后的两个括号?

c++ - 在任何Windows版本上使控制台全屏显示

c++ - 在构造函数中设置默认参数?句法

php - 类构造函数干扰另一个类

c++ - 我们可以为 C++ 中的默认构造函数提供主体吗?

c++ - 找不到用户创建的类的构造函数

C++ 类 : Initializing attributes without constructor overloading