K.Maebashi's BBS 投稿フォーム
ハンドル名
件名
Link
>>うーん、私が狙ったのは、複数のpointオブジェクトから共通に参照できる >>ひとつのクラスフィールド、です。 >>まあ、create_point_class()を複数回呼んでしまえば複数作れてしまいますが、 >>それは利用者側の問題にしてよいのではないかと。 > >それだとprivateなインスタンス変数な気がします...。間違ってたらすいません。 >但し、パフォーマンスはともかく、利用者側から見れば、 >やりたいことは実現できますので現時点では十分かもしれません。 > > >>あくまで「静的な」(ひとつしかない)データが、グローバル変数以外の方法で必要だ、 >>ということであれば、Cのstatic指定したローカル変数のようなものを付けると >>いうのはひとつの手かもしれませんが。 > >staticのローカル変数でも実現可能ですね。どう設計するかですね。 > >あと、制御構造の抽象化としてiteratorのようなものを表現する場合、 >Ruby(のeachメソッド)みたいにクロージャをメソッドに渡す形でサンプルを書いてみたのですが、 >もっとうまいやり方がありますか? >あと、C#のforeachやJava5の拡張forのようなものを実装する予定はありますか? > >function Array(arr_data) { > this = new_object(); > this.arr_data = arr_data; > > this.iterate = closure(c) { > for (i = 0; i < this.arr_data.size(); i = i + 1) { > c(this.arr_data[i]); > } > }; > > return this; >} > >a = {1, 2, 3, 4, 5, 6, 7, 8}; >c1 = closure(i) { > print("" + i + " "); >}; > >a1 = Array(a); >a1.iterate(c1); > >
spamよけのため、ここに「ほげぴよ」と入力してください。
削除パスワード :
クリック!