1

次のようなクラスがあるとします。

class ClassA{

    var $var = 'a1';
    static $static_var = 'a2';

    function get(){
        return $this->var;
    }

    static function get_static(){
        return self::$static_var;
    }

}

これを呼び出すと、メモリ内で何が起こりますか:

$class = new ClassA();
echo $class->get();

また、これを呼び出すとどうなりますか:

echo ClassA::get_static();

ClassA のインスタンスを作成すると、クラスの静的メンバーはどうなりますか? それはより多くのメモリを消費しますか?静的メンバーは無視されますか?

内部に多数の静的関数を保持したいのですClassAが、ClassA のインスタンスも作成したいと考えています。静的メンバーを動的メンバーから分離する必要がありますか?

4

1 に答える 1

1

ClassA 内に一連の静的関数を保持したいのですが、ClassA のインスタンスも作成したいと考えています。静的メンバーを動的メンバーから分離する必要がありますか?

回答: 静的クラス メンバーは、クラスごとに 1 回メモリを消費します。インスタンスごとに 1回メモリを消費する通常のクラス メンバー

于 2013-04-11T01:56:38.383 に答える