类与指针

析构函数构造的两种方法:

range::range (float a ,float b,float c){width=a,length=b,hight=c;
 cout<<"构数成功造函"<

这种方法写出时,函数内部的顺序没有关系。

2、

range::range(float a,float b,float c)
    {width=a,length=b,hight=c,cout<<"构造析构函数成功"<

eg:

class  A
{ public :   // 构造和析构必须public
       A( ) { cout<<"构造 A()"<< endl;   }
     ~A( ) { cout<<"析构~A()"<< endl; }
};
class  B
{ public : 
       B( ) { cout<<"构造 B()"<

构造函数遵从:先构造,后析构
后构造,先析构
***

构造对象数组:

  • 每个元素都是一个对象
  • 数组有多少个对象就调用多少次构造函数

    代码块:

class range
{
    float width;
    float length;
    float hight;
    float area;
    int x;
public:  

range::range(float a,float b,float c)
    {width=a,length=b,hight=c,cout<<"构造析构函数成功"<x=a;}  
float range::getarea(void)
    {return width*length*hight;}  
}  
int main()
{
    range data[3]={range(2,3,4),range(5,6,7),range(22,2,2)};
    for(int i=0;i<3;i++)
        cout<<"数组"<

运行的结果:

构造析构函数成功
构造析构函数成功
构造析构函数成功
数组1的面积:24
数组2的面积:210
数组3的面积:88
请按任意键继续. . .
***

对象指针与数组:

class point
{
    int x,y;
    static int count;
public:
    void set_data(int a,int b){x=a,y=b;}
    void display(void)
    {
        cout<<"x="<

你可能感兴趣的:(类与指针)