0

多項式と単項式 (単項式の例は42xk^2c^3d) で動作する PHP スクリプトを作成しています。クラスは次のMonomialように定義されます。

class Monomial {
    public $coefficient; // i.e. 42
    public $letters;     // an array of Letter objects
    public $literal;     // i.e. xk^2c^3d
    /* Code */
}

現在、私のアプリケーションでは、文字の配列とリテラル変数の両方を使用しています。単項式を更新するたびに変数を「手動で」更新したくありませんliteral(たとえば、変数に何かを追加するとき)。代わりに、変数にアクセスすると関数が呼び出されて「ビルド」されるように、変数を動的にしたいのです。何か案は?

4

2 に答える 2

0

メソッドを使用し__getます。例:

class Monomial {
    public $coefficient;
    public $letters;
    public $literal;

    function __get($var) {
        if ($var != "literal") {
            return $this->data[$var];
        } else {
            foreach ($this->letters as $letter) {
                $return.=$letter->literal;
            }
            return $return;
        }
}

オブジェクトには、要求に応じてリテラル文字列を生成する同様の__getメソッドがあります。Letter

于 2013-09-24T17:46:53.413 に答える