1.对象数组
-定义
Square obj[3] = { Square(1), Square(2),Square(3)}
构造:有多少个数组元素,则调用多少次构造函数
-访问
对象数组名【下标】.公有成员名
cout << obj[n] <<endl;
析构:有多少个数组元素,则调用多少次析构函数
2.对象的动态分配
3.对象作为函数的形参
-值传递与常对象
常对象定义时必须赋初值
double InnerCircleArea( const Square s ) // 常对象形参
{
……
}
-引用传递和常引用
double InnerCircleArea( Square &s ) // 引用传递
{
double r = s.a / 2;
return (3.14*r*r);
}
cout << InnerCircleArea( obj ) << endl;
建议定义常引用:
double InnerCircleArea( const Square &s ) { …… }//常引用
-指针传递与只想常引用的指针
double InnerCircleArea( Square *s ) // 指针传递
{
double r = s->a / 2;
return (3.14*r*r);
}
调用方法:
cout << InnerCircleArea( &obj ) << endl;
double InnerCircleArea( const Square *s ) { …… }