首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

【C/C++】在一个种中重载另一个类的构造函数 -构造函数是一个特殊的操作符

2012-12-26 
【C/C++】在一个类中重载另一个类的构造函数 ----构造函数是一个特殊的操作符假设我们有两个类A,B#include

【C/C++】在一个类中重载另一个类的构造函数 ----构造函数是一个特殊的操作符

假设我们有两个类A,B

#include <iostream>#include <string>#include <vector>using namespace std;class A{public:    A(int n) : a(n){}      void Print() {cout << a << endl;}private:        int a;  };class B{public:    operator A() const    {        return A(b);    }    void SetVal(int a) {b = a;}private:        int b;  };int main(){    B objB;     objB.SetVal(5);    A objA(objB);    objA.Print();    objB.SetVal(10);    vector<A> vecA;    vecA.push_back(objB);    vecA[0].Print();    return 0;}

输出结果:

5

10



热点排行