一:
#include<iostream>
using namespace std;
class circle{
private:
double radius;
public:
circle(double r);
double area();
~circle();
};
int main()
{
circle ff[3]={1,3,5};
cout<<"1"<<endl;
for(int i=0;i<3;i++)
{
cout<<ff[i].area()<<endl;
}
cout<<"2"<<endl;
cout<<"3"<<endl;
return 0;
}
circle::circle(double r)
{
cout<<"construct..."<<endl;
radius=r;
}
double circle::area()
{
return radius*radius*3.14;
}
circle::~circle()
{
cout<<"destruct..."<<endl;
}
输出结果:
construct…
construct…
construct…
1
3.14
28.26
78.5
2
3
destruct…
destruct…
destruct…
由此,可以进一步理解构造函数,初始化对象的时间,以及析构函数被调用的时间。
二:
输出平面上若干个点。
#include<iostream>
using namespace std;
class point{
private:
int x,y;
public:
point(int a,int b);
~point();
void print();
};
int main()
{
point ff[3]={point(1,2),point(3,4),point(5,6)};
cout<<"1"<<endl;
for(int i=0;i<3;i++)
{
ff[i].print();
}
cout<<"2"<<endl;
return 0;
}
point::point(int a,int b)
{
cout<<"constructing..."<<endl;
x=a;
y=b;
}
void point::print()
{
cout<<"("<<x<<","<<y<<")"<<endl;
}
point::~point()
{
cout<<"destructing..."<<endl;
}
输出结果: