委派建设者

时间:2013-08-05 21:07:01

标签: c++

我正在学习委派构造函数。

#include <iostream>
using namespace std;

class A{
public:
    A(int i, int j): num1(i), num2(j){
        average=(num1+num2)/2;
    }
    A(): A(0){   }
    A(int i): A(i, 0){  }

private:
    int num1;
    int num2;
    int average;
};

这就是我成功的用武之地。我不知道它在int main()中有效。

1 个答案:

答案 0 :(得分:1)

我认为你只需要一个例子来说明如何从A创建对象:

int main()
{
  A obj1(10, 20); // Calls A(10, 20)                average: 15
  A obj2;         // Calls A() -> A(0) ->  A(0, 0)  average: 0
  A obj3(100);    // Calls A(100) -> A(100, 0)      average: 50
}