/*
构造函数初始化时必须采用初始化列表一共有三种情况,
1.需要初始化的数据成员是对象(继承时调用基类构造函数)
2.需要初始化const修饰的类成员
3.需要初始化引用成员数据
此例实现第一种情况!
*/
#include <iostream>
using namespace std;
class Point
{
protected:
int m_x, m_y;
public:
Point(int m = 0,int n = 0) //此处设默认值比较好
{
m_x = m;
m_y = n;
printf(" point constructor called\n");
}
Point(Point& p) //拷贝构造
{
m_x = p.GetX();
m_y = p.GetY();
printf("point copy constructor called\n");
}
int GetX()
{
return m_x;
}
int GetY()
{
return m_y;
}
};
*/
};
int main()
{
int k = 2;
//init A(12,2);
init A(k,132); //输出132,2
cout<<A.a<<" "<<A.b<<endl;
int end;
cin>>end;
return 0;
}