对象数组(初学)

 

目录

一.什么是对象数组

二.定义对象数组

三.对象数组初始化

四.访问对象数组元素

五.new和对象数组


一.什么是对象数组

   所谓对象数组,指每一个数组元素都是对象的数组,
   即若一个类有若干个对象,把这一系列的对象用一个数组来存放。
   对象数组的元素是对象,不仅具有数据成员,而且还有函数成员

二.定义对象数组

  类名 数组名[元素个数];
  例如:
  Box a[3];//a是数组名 

三.对象数组初始化

   类名 数组名[元素个数]={}
   例如:
   Box a[3]={Box(),Box(15,18,20),Box(16,20,26)}; 
   Box(),Box(15,18,20),Box(16,20,26)表示三个类的对象 

四.访问对象数组元素

  通过下标访问 数组名[下标].成员名
  例如:
  a[1].volume( )
  表示将对象Box(15,18,20)三个数传入volume( )函数中

    代码举例 

#include
using namespace std;
class Box
{
   private :
     int height;
     int width;
     int length;	
   public :
     Box(int h=10,int w=12,int len=15); 
     int volume( );
}; 
Box::Box(int h,int w,int len):height(h),width(w),length(len){}
//首先函数Box(int h,int w,int len)是属于类Box的函数 
//将传入的h,w,len值赋给height,width,length 
int Box::volume( )//::表示volume()函数是类的成员函数 
{
	return (height * width * length); 
}
int main( )
{
	Box a[3]={Box(),Box(15,18,20),Box(16,20,26)};
	cout<<"volume of a[0] is "<

五.new和对象数组

首先回顾以下:
   A *p;//定义了A类型的指针p
   p=new A(1);//new出来的是地址 
注意: 
A a[3]={*(new A(1)),*(new A(2)),*(new A(3))};
new A(1),new A(2),new A(3)是三个地址,通过*去取地址里面的值 
#include 
using namespace std;
class A
{
	int id;
public: 
	A(int i){
		id=i;
		cout<构造函数"<析构函数"<

你可能感兴趣的:(面向对象编程c++,c++)