クラスのポインタ

方法デストラクタ設定両方:

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

執筆のこの方法は、内部順序の機能は重要ではありませんとき。

2、

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

例えば:

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

コンストラクタコンプライアンス:最初の構造、デストラクタ
設定後、最初のデストラクタ
***

オブジェクトの配列を構築します:

  • 各要素がオブジェクトであります
  • 回数は、コンストラクタが呼び出されたどのように多くのオブジェクトの配列

    ブロック:

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<<"构造析构函数成功"<<endl;}
    void get_x(int a){this->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<<"数组"<<i+1<<"的面积:"<<data[i].getarea()<<endl;
    //point point1,point2;  
system("pause");
return 0;
}  

実行結果:

成功デストラクタ
成功デストラクタ
デストラクタ成功
アレイエリア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="<<x<<"  "<<"y="<<y<<endl;
    }
};
int main()
{
    point a[5];
    point *p[5];
    for(int i=0;i<5;i++)
    {
        p[i]=&a[i];
        p[i]->set_data(i,i+2);
        //a[i].set_data(i,i+2);
        p[i]->display();
        (*p)++;
    }
system("pause");
return 0;
}

おすすめ

転載: www.cnblogs.com/lixianhu1998/p/11919637.html