1、默认构造函数
形式:没有入参
调用方式:直接定义
声明:
Constructor();
调用:
Constructor c;
2、初始化构造函数
形式:有参数列表
调用方式:传参即可
声明:
Constructor(int a, int b);
调用:
Constructor c(1,2);
3、拷贝构造函数
形式:参数为变量常引用
调用方式:当使用现有对象初始化新对象时,拷贝构造函数被调用,可以理解为是一个特殊的转换构造函数,函数传参、赋值时会被隐式调用。
声明
Constructor(const Constructor& c);
调用:
Constructor c1 = c;
f(c);
4、移动构造函数
形式:参数为右值引用
调用方式:当使用右值初始化的时候,就是使用移动构造函数。
声明:
Constructor(Constructor&& c);
调用:
Constructor c(move(Constructor()));
5、委托构造函数
形式:初始化列表式其他构造函数
调用方式:正常调用即可
定义:
Constructor c(int a, int b): Construtor() {}
6、转换构造函数
形式:参数列表有且仅有一个参数,拷贝构造函数和移动构造函数都是特殊的转换构造函数
调用方式:用其他变量初始化时
声明:
Constructor(int a);
调用:
Constructor b = 3;
标签:初始化,调用,int,C++,参数,Constructor,类别,构造函数
From: https://www.cnblogs.com/servlet-context/p/18349966