[#11357] [PATCH] an analogue of `long long' — "Nobuyoshi.Nakada" <nobu.nakada@...>

なかだです。

18 messages 2000/11/01
[#11358] Re: [PATCH] an analogue of `long long' — matz@... (Yukihiro Matsumoto) 2000/11/01

まつもと ゆきひろです

[#11364] Re: [PATCH] an analogue of `long long' — EGUCHI Osamu <eguchi@...> 2000/11/02

えぐち@エスアンドイー です。

[#11440] class Character (was: Ruby I18N) — Yasushi Shoji <yashi@...>

[ruby-dev:11428] からの続きですが、threadは切りました。

14 messages 2000/11/08
[#11442] Re: class Character (was: Ruby I18N) — TAKAHASHI Masayoshi <maki@...> 2000/11/08

高橋征義です。用語について。

[#11443] Re: class Character (was: Ruby I18N) — Yasushi Shoji <yashi@...> 2000/11/08

At Wed, 8 Nov 2000 20:44:55 +0900,

[#11520] A problem of Socket methods on Windows — OKA Toshiyuki <oka@...>

岡と申します。

22 messages 2000/11/15
[#11523] Re: A problem of Socket methods on Windows — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/11/15

なかだです。

[#11528] Re: A problem of Socket methods on Windows — matz@... (Yukihiro Matsumoto) 2000/11/15

まつもと ゆきひろです

[#11532] Re: A problem of Socket methods on Windows — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/11/15

なかだです。

[#11534] Re: A problem of Socket methods on Windows — OKA Toshiyuki <oka@...> 2000/11/15

岡です。

[#11535] Re: A problem of Socket methods on Windows — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/11/15

なかだです。

[#11538] Re: A problem of Socket methods on Windows — "Nobuyoshi.Nakada" <nobu.nakada@...> 2000/11/15

なかだです。

[#11662] IO (Re: fork problem?) — Tanaka Akira <akr@...17n.org>

In article <E140cR3-0002ls-00@ev.netlab.zetabits.co.jp>,

22 messages 2000/11/28
[#11663] Re: IO (Re: fork problem?) — matz@... (Yukihiro Matsumoto) 2000/11/28

まつもと ゆきひろです

[#11664] Re: IO (Re: fork problem?) — Tanaka Akira <akr@...17n.org> 2000/11/28

In article <E140fxW-0002u9-00@ev.netlab.zetabits.co.jp>,

[#11665] Re: IO (Re: fork problem?) — Tanaka Akira <akr@...17n.org> 2000/11/28

In article <hvor93w5wb8.fsf@coulee.m17n.org>,

[#11669] Re: IO (Re: fork problem?) — Tanaka Akira <akr@...17n.org> 2000/11/29

In article <hvoofz05uwz.fsf@coulee.m17n.org>,

[#11672] Re: IO (Re: fork problem?) — matz@... (Yukihiro Matsumoto) 2000/11/29

まつもと ゆきひろです

[#11675] Re: IO (Re: fork problem?) — Koji Arai <JCA02266@...> 2000/11/30

新井です。

[#11677] Re: IO (Re: fork problem?) — matz@... (Yukihiro Matsumoto) 2000/12/01

まつもと ゆきひろです

[ruby-dev:11647] Re: class variable

From: Koji Arai <JCA02266@...>
Date: 2000-11-26 13:26:03 UTC
List: ruby-dev #11647
新井です。

> まつもと ゆきひろです
> 
> In message "[ruby-dev:11636] Re: class variable"
>     on 00/11/23, Koji Arai <JCA02266@nifty.ne.jp> writes:
> 
> |えっと、(A)でのクラス変数追加が許されるのは、クラスの特異ク
> |ラス定義はそのクラスの定義と等価とみなしているということでしょ
> |うか?
> 
> そういうことですね。やりすぎかしら?

これがやりすぎかどうかの判断は私にはむつかしいのですが、これ
の意図するところは

class Foo
  @@foo = 1
  def foo
    @@foo
  end
end

と同じことを

class << Foo
  @@foo = 1
  def foo
    @@foo
  end
end

でもできるようにということなんですよね?

マニュアル用に現時点でのクラス変数の説明を書いてみました。突っ
込み大歓迎。

= クラス変数

  : 例:
        class Foo
          @@foo = 1
          def foo
            @@foo
          end
          def foo=(v)
            @@foo = v
          end
        end

`@@'で始まる変数はクラス変数です.クラス変数とはインスタンス
間で共有される変数のことです.クラス変数はクラス定義の中で初
期化(定義)され,クラス定義、メソッド定義内での参照/代入が可
能です.

クラス変数は定数と似ていますが,以下の点で異なります.

* 再代入可能(定数は警告を出す)
* クラスの外から直接参照できない(継承されたクラスからは参照/代入可能)

また,クラス自身のインスタンス変数とは以下の点で異なります.

* 定義されていないクラス変数の参照/代入はエラー
* サブクラスから親クラスのクラス変数の参照/代入が可能
* インスタンスメソッドから参照/代入が可能

特異クラス定義,特異メソッド定義においては以下に示すルールがあります.

* 特異クラスのコンテキストでのクラス変数
  * (A) 特異クラス定義の対象がクラス(またはモジュール)ならそのクラス変数
  * (A') そうでなければ特異クラスのクラス変数

* 特異メソッド定義のコンテキストでのクラス変数
  * (B) 特異メソッドのレシーバがクラス(またはモジュール)ならそのクラス変数
  * (B') そうでなければそのオブジェクトのクラスのクラス変数

  : 例:
    〜略〜

--
新井康司 (Koji Arai)

In This Thread