植田です。


> 前川です。
;
> > a が不定(nil) なので
> 
> > nil + 0
> 
> > はできませんよ、と言ってます。
> 
> なるほど、納得です。確かに。
> C#では、このようなことを回避するために、
> 
> int a のような記述(aをintegerとして宣言する)ができたのですが、
> このような記述は、rubyにもあると思いますが、では、難しいのでしょうか?

C# は知りませんが、C でも

	int a;

と書けても、これで

	a = a + 0;

をすると値は不定になりますよね。

------------------------------
ueda@ran[~ ]cat test.c
#include <stdio.h>

int main(void) {
        int a;
        a = a + 0;
        printf("%d\n", a);
        return 0;
}
ueda@ran[~ ]./test
134513520
------------------------------

 なので『変数の型を宣言する』と『変数の初期化をする』の話が混ざっている
と思います。


> また、string b ="" のような記述は出来ないのでしょうか?

 『変数 b は文字列クラスのインスタンスで、初期値は空』という記述であれ
ば

	b = String.new('')

で良いと思います。でも面倒なので私は

	b = ''

と書いてしまいますけど。



-----
株式会社ネットフォレスト            http://www.netforest.ad.jp/
Dr.Web/Vade Retro 担当 植田 裕之   ueda / netforest.ad.jp
tel:045-663-6277 fax:045-663-6278