注册 登录
编程论坛 C++教室

对象数组的使用方法

hmsabc 发布于 2010-08-06 22:41, 496 次点击
程序代码:

/*数组不仅可以由简单变量组成,也可以由对象组成(对象数组的每一个元素都是同类的对象)。对象数组的使用方法如下*/
#include <iostream>
using namespace std;
class Box                          //定义 Box 类
{
public:
    Box( int h = 10,int w = 12,int len = 15):height( h),width( w),length( len){ };
                                  //声明有默认参数的构造函数,用参数初始化表对数据成员初始化
    int volume( );                // volume 函数声明
private:
    int height;
    int width;
    int length;
};
int Box::volume( )                                   //类外定义函数 volume
{ return( height * width * length);
}
int main( )
{
    Box a[3] = {                                      //定义对象数组
        Box( 10,12,15),                               //调用构造函数 Box,提供第一个元素的实参
        Box( 15,18,20),                               //调用构造函数 Box,提供第二个元素的实参
        Box( 16,20,26)                                //调用构造函数 Box,提供第三个元素的实参
    };                                                //注意这里有分号
    cout << "volume of a[0] is " << a[0].volume( ) << endl;          //调用 a[0] 的 volume 函数
    cout << "volume of a[1] is " << a[1].volume( ) << endl;          //调用 a[1] 的 volume 函数
    cout << "volume of a[2] is " << a[2].volume( ) << endl;          //调用 a[2] 的 volume 函数
    system("pause");
    return 0;
}
5 回复
#2
vfdff2010-08-06 23:07
是的,只要每个元素类型一致的集合就可以了
#3
hmsabc2010-08-07 07:48
回复 2楼 vfdff
概念是很抽象的,要经过反复的练习,才能把握。
#4
lintaoyn2010-08-07 07:56
你把类类型当做内置类型不就好了
#5
hmsabc2010-08-07 09:01
回复 4楼 lintaoyn
我是初学,对你所说还不太理解。谢谢你,我会努力的。
#6
pangding2010-08-07 22:54
把数组名带个下标,当成那个对象就可以了。

比如,一般不是数组就是这样:
Box a, b, c;
用的时候也分别是 a, b, c;

数组是
Box a[3];
用的时候是 a[0], a[1], a[2]

与不是数组没有任何区别。唯一的区别可能就是,数组可以用在循环里,操作下标方便。前者只能手工编码。
1