浅谈C++对象组合

浅谈C++对象组合_第1张图片

#include
//初始化列表 提供了对成员变量初始化的方式
//Constructor 
class M
{
private:
int mI;
public:
M(int i)
{
printf("M(int i),i=%d\n",i);
mI=i;
}
int getI()
{
return mI;
}

};

class Test
{
private:
const int c; //类里面成员定义时变量不能初始化
M m1;
M m2;
public:
Test():c(1),m1(2),m2(3) //////////////////重要 初始化列表
{ /////const成员只能被初始化 不能被赋值
printf("Test()\n"); ///构造函数体内叫赋值
}

void print()
{
printf("c=%d,m1.mI=%d,m2.mI=%d\n",c,m1.getI(),m2.getI());
}

};

void run()
{ 
Test t1;
t1.print();
}
int main()
{ 
run();
printf("Press any key to continue...");
getchar();
return 0;

}

浅谈C++对象组合_第2张图片

以上所述就是本文的全部内容了,希望大家能够喜欢。

你可能感兴趣的:(浅谈C++对象组合)