#include <iostream>
using namespace std;
class Coordinate {
public:
Coordinate()
{
times = 2;
cout << "Cooordinate construction1 called!" << endl;
}
Coordinate(int times1)
{
times = times1;
cout << "Cooordinate construction2 called!" << endl;
}
~Coordinate()
{
cout << "Cooordinate destruction called!" << endl;
}
void InputCoord()
{
for (int i = 0; i < times; i++)
{
cout << "Please Input x:" << endl;
cin >> Coord[i][1];
cout << "Please Input y:" << endl;
cin >> Coord[i][2];
}
}
void ShowCoord()
{
cout<<"The coord is:"<<endl;
for (int i = 0; i < times; i++)
{
cout <<"("<<Coord[i][1]<<","<<Coord[i][2] << ")" << endl;
}
}
void ShowAvgCoord()
{
float avgx = 0;
float avgy = 0;
for (int i = 0; i < times; i++)
{
avgx = avgx + Coord[i][1];
avgy = avgy + Coord[i][2];
}
avgx = avgx / times;
avgy = avgy / times;
cout << "The AVG coord is:" << endl;
cout << "("<<avgx<<","<<avgy<<")" << endl;
}
private:
float Coord[100][100];
int times;
};
int main()
{
Coordinate x;
x.InputCoord();
x.ShowCoord();
x.ShowAvgCoord();
return 0;
}
运行结果:
Cooordinate construction1 called!
Please Input x:
1
Please Input y:
2
Please Input x:
3
Please Input y:
4
The coord is:
(1,2)
(3,4)
The AVG coord is:
(2,3)
Cooordinate destruction called!
C:\Users\lhk\source\repos\上机3.1\x64\Debug\上机3.1.exe (进程 13120)已退出,代码为 0。
要在调试停止时自动关闭控制台,请启用“工具”->“选项”->“调试”->“调试停止时自动关闭控制台”。
按任意键关闭此窗口. . .
构造函数在定义对象时被引用,析构函数在main函数结束时被引用。
对象数组每部分分别引用构造和析构函数。