0

子クラスの特定のインスタンスに対して親クラスのメンバーがアクティブにならないように、子クラス内から親クラスのデフォルトのデストラクタを呼び出す方法はありますか?

この場合、親クラスのデストラクタは定義されていません。これは、親クラスのメンバー変数が多数ある場合に使用されることがあります。その場合、このメソッドは、各メンバー変数に対してunset()を使用するよりも便利です。

可能な解決策はありますか?

4

2 に答える 2

0

メイン クラス (フォーム拡張クラス__destruct()とも呼ばれる) には関数が定義されていないため、呼び出すと、有効で予想される致命的なエラーが発生します。parentparent::__destruct();

Fatal error: Call to undefined method c1::__destruct()

self::__destruct();または使用できます$this->__destruct()

親に __destrcut() を追加する場合は、次のようにします。

class c1
{
    public $a=10;
    public function __construct()
    {
        echo "Called Construct_c1()<br>";
    }
    public function __destruct()
    {
        echo "Called Destruct_c1()<br>";
    }
}

そして今、それはparent::__destruct();通話可能です

于 2013-09-10T10:49:54.940 に答える