next up previous contents
Next: 11. メソッドと秘伝 Up: 10. クラス Previous: 10.3 演算子 new

10.4 クラス、インスタンスの代入

Cmmでは、定義されたクラス、生成されたインスタンスも単なるデータとして 扱っています。そのため、定義したクラスやインスタンスを下記のように別の 変数に代入することもできます。


class ExampleClass {

public x, y ;
method Init () { x = y = z = 0 ; }
}

var a, b, c ;

c = ExampleClass ; // (A)
x = new ExampleClass ;
y = new c ; // (B)

この場合、c はExampleClassのクラス定義を直接参照します(A)。代入時のコピー は発生しません。また、クラスを代入された変数 c を使って、インスタンス を生成することも可能です(B)。

また、インスタンスの代入も、インスタンスのデータエリアを参照するだけで、 配列のような代入時のコピーは発生しません。


next up previous contents
Next: 11. メソッドと秘伝 Up: 10. クラス Previous: 10.3 演算子 new
Tetsuo Ono
1998-11-05