-4

重複の可能性:
C++ では、関数名の前のチルダ「~」は何を意味しますか?

関数の前にあるとは~、C++ で次のことを意味します。

class list
{
    ...other stuff...
public:
    list();
    ~list();
    void insertFront(const TYPE&);
    TYPE deleteFront();
    void insertRear(const TYPE &);
    int isEmpty() const;
    void traverse() const;
};
4

2 に答える 2

5

これは、関数が定義されているクラスのデストラクタであることを意味します。名前の残りの部分 (~ の後) は、クラスの名前と一致する必要があります。

于 2012-10-15T03:50:34.193 に答える
1

デストラクタです。

オブジェクトが作成されるときにコンストラクターが呼び出されるのと同じように、オブジェクトが破棄されるときにデストラクタが呼び出されます。

でオブジェクトを作成しnewた場合、 を呼び出すとデストラクタが呼び出されますdelete

スタック上にオブジェクトを作成した場合、オブジェクトがスコープ外になるとデストラクタが呼び出されます。

オブジェクトが消える前に必要なリソースのクリーンアップ、通知、またはその他の作業を行うためです。オブジェクト自体のために予約されたメモリは、デストラクタ関数の全期間にわたって有効です。

于 2012-10-15T03:54:10.703 に答える