C++中的转换构造函数?

在本节中,我们将看到什么是 C++ 类中的转换构造函数。构造函数是类的一种特殊类型的函数。它具有一些独特的属性,例如,其名称将与类名相同,不会返回任何值等。构造函数用于构造类的对象。有时构造函数可能带一些参数,有时它不带参数。

当构造函数只接受一个参数时,这种类型的构造函数就成为转换构造函数。这种类型的构造函数允许自动转换为正在构造的类。

示例

#include<iostream>
using namespace std;
class my_class{
   private:
      int my_var;
   public:
      my_class(int x) {
         this->my_var = x; //设置 my_var 的值
         using parameterized constructor
      }
      void display() {
         cout << "The value of my_var is: " << my_var <<endl;
      }
};
int main() {
   my_class my_obj(10);
   my_obj.display();
   my_obj = 50; //这里调用了转换构造函数
   my_obj.display();
}
输出结果
The value of my_var is: 10
The value of my_var is: 50