运行结果: 23 345 5 34 6 Sum of row o is 10 Sum of row 1 is 14 Sum of row 2 is 18 101418
运行结果: 1 2 3 4 2 3 4 5 3 4 5 6 Sum of row 0 is 10 Sum of row 1 is 14 Sum of row 2 is 18 10 14 18 21
C++语言程序设计 对家数组 数·声明 类名数组名[元素个数] 组。使用对象数组时,只能引用单个数组元 素,访问元素对象的公有成员,通过下 标访问。 数组名[下标]成员名 x
C++语言程序设计 22 对象数组 ⚫ 声明 类名 数组名[元素个数]; ⚫ 使用对象数组时,只能引用单个数组元 素,访问元素对象的公有成员,通过下 标访问。 数组名[下标].成员名 数 组
C++语言程序设计 对家数组初始化 数·数组中每一个元素对象被创建时,系统 都会调用类构造函数初始化该对象。 组。通过初始化列表赋值 例 Point A[2=(Point(1, 2 ), Point(3, 4 )1 ●如果没有为数组元素指定显式初始值, 对象数组元素便使用默认值初始化(调 用默认构造函数)
C++语言程序设计 23 对象数组初始化 ⚫ 数组中每一个元素对象被创建时,系统 都会调用类构造函数初始化该对象。 ⚫ 通过初始化列表赋值。 例: Point A[2]={Point(1,2),Point(3,4)}; ⚫ 如果没有为数组元素指定显式初始值, 对象数组元素便使用默认值初始化(调 用默认构造函数)。 数 组
C++语言程序设计 include <iostream> using namespace std class arrayElem i int X; public void setx(int iiX=i;1 int getx(i return X; 1 int maino i ArrayElem obs[4] ∥)创建对象数组 for(int i =0; i <4; i++) obs[]. setx( ∥访问数组元素的成员 for(=0;i<4;i++) cout<< obs["<<i<<].getx(: "<<obs]. getx(<<n", ∥访问数组元素的成员 x return 0:
C++语言程序设计 24 #include <iostream> using namespace std; class ArrayElem { int x; public: void setx(int i) { x = i; } int getx() { return x; } }; int main() { ArrayElem obs[4]; //创建对象数组 for(int i=0; i < 4; i++) obs[i].setx(i); //访问数组元素的成员 for(i=0; i < 4; i++) cout<<"obs["<<i<<"].getx(): "<<obs[i].getx()<<"\n"; //访问数组元素的成员 return 0; }
C++语言程序设计 教组元素所属类的构造函数 数·不声明构造函数,则采用默认构造函数 各元素对象的初值要求为相同的值时, 组可以声明具有默认形参值的构造函数。 ●各元素对象的初值要求为不同的值时, 需要声明带默认形参的构造函数。 当数组中每一个对象被删除时,系统都 要调用一次析构函数
C++语言程序设计 25 数组元素所属类的构造函数 ⚫ 不声明构造函数,则采用默认构造函数。 ⚫ 各元素对象的初值要求为相同的值时, 可以声明具有默认形参值的构造函数。 ⚫ 各元素对象的初值要求为不同的值时, 需要声明带默认形参的构造函数。 ⚫ 当数组中每一个对象被删除时,系统都 要调用一次析构函数。 数 组