R.Tanaka.Ichiro's Blog

主にC# な話題です

目次

Blog 利用状況

ニュース

慣れなんだろうか?

今まで for文 は次のように書いていました。

for(int i = 0; i < this.Target.Count; ++i) {

しかし、C#3.0 では var が使えるので、すっかり var だらけです。
なので、for文も以下のように書いてみました。

for(var i = 0; i < this.Target.Count; ++i) {

まあ、別にこう書くことに抵抗がある訳ではないのですが、先のように int で見慣れていただけに、何というか

落ち着かない

です。


皆さんは、どちらをお使いなのでしょうか?

投稿日時 : 2007年11月6日 13:29

Feedback

# re: 慣れなんだろうか? 2007/11/06 13:37 シャノン

JavaScript でつい int と書いて怒られるのにいつまで経っても慣れませんorz

# re: 慣れなんだろうか? 2007/11/06 13:47 じゃんぬねっと

JavaScript で見慣れているので違和感がないです。

# re: 慣れなんだろうか? 2007/11/06 14:04 IIJIMAS

VS2008B2
コードスニペット
for[Tab][Tab]
だとintってでますね。
foreach[Tab][Tab]
だとvarですね。

# re: 慣れなんだろうか? 2007/11/06 14:42 επιστημη

varにすることで何のメリットもないならなにもわざわざ...
varってそんなにおいしいの?

# re: 慣れなんだろうか? 2007/11/06 14:44 ひろえむ

なんでvarにするんですか?

私もえぴさんと同様の疑問があります。
無意味にvarにすることのメリットが見えてこないですが・・・。

# re: 慣れなんだろうか? 2007/11/06 15:05 シャノン

var は var としか書けない部分をカバーするために導入されたものなので、それ以外の部分で使う必然性はないのですが、統一されていない気持ち悪さはあるかも? でもレベルが低いほうにあわせるのもしっくり来ない…。

# re: 慣れなんだろうか? 2007/11/06 15:56 かつのり

JavaScriptでよくfor(int i = ...
と書いて動かない・・・何故・・・?
アッー!
と言うことがあります。

# re: 慣れなんだろうか? 2007/11/06 16:41 アキラ

明示的に型を書かないほうが分かりやすい、
もしくは明示的に型を書けない(匿名型等)以外ではなるべくvarは使わない方がいいんじゃないですか?

varだらけだと可読性がタイヘンなことになります

# re: 慣れなんだろうか? 2007/11/06 18:07 ghost_shell

なんと贅沢な悩み!

# re: 慣れなんだろうか? 2007/11/06 18:58 NyaRuRu

私の場合,for ループは慣れから int を使いますけど,その他のローカル変数では圧倒的に var が多いです.
int を var と書き代えても一文の長さは減りませんが,4 文字以上の型名だとやっぱり目に見えて短くなりますしね.
変数名のカラムが揃うのもちょっと気に入ってます.

for ループだけ統一感がないのはアレですが,そもそも for を使う機会が激減してるのであんまり気にならないのかも.

# let = const var 2007/11/06 19:03 NyaRuRu

しかしどうも var ばっかり話題になりますが,let も似たような感じで使えて,かつ再代入不可と気持ちよく使えますよ.
おすすめ.
http://blogs.msdn.com/lukeh/archive/2007/10/01/taking-linq-to-objects-to-extremes-a-fully-linqified-raytracer.aspx

# let ≠ const var 2007/11/06 19:11 NyaRuRu

って,.NET の場合 const なメンバ関数の概念がないので,const var てのも変か.
CLR の controlled-mutability managed pointer に対応する概念が C# にあると,ちょうど let と同じセマンティクスで便利なのかもしません.

# re: 慣れなんだろうか? 2007/11/07 14:20 R・田中一郎

じゃんぬねっと さん

>JavaScript で見慣れているので違和感がないです。

なるほど、JavaScript は var でしたね。

---------------------------------------------------------
IIJIMAS さん

>コードスニペット
>for[Tab][Tab]
>だとintってでますね。

うーん、やっぱり int と書くべきなんでしょうかね。

---------------------------------------------------------
επιστημη さん

>varにすることで何のメリットもないならなにもわざわざ...

型セーフな言語なのに var というところが、はぁはぁ、な訳です。

---------------------------------------------------------
ひろえむ さん

>なんでvarにするんですか?

var だらけなんで、いっそのこと for も var にしてしまえ、というノリでしょうか。

---------------------------------------------------------
シャノン さん

>統一されていない気持ち悪さはあるかも?

そうなんですよね。

---------------------------------------------------------
かつのり さん

>JavaScriptでよくfor(int i = ...

わかりますわかります。
慣れってありますよねー

---------------------------------------------------------
アキラ さん

>varだらけだと可読性がタイヘンなことになります

僕のコードは、var だらけですけど結構大丈夫ですー

---------------------------------------------------------
ghost_shell さん

>なんと贅沢な悩み!

悩みという程でもないのですが、皆さんどうなのかな?、と思った訳です。

---------------------------------------------------------
NyaRuRu さん

>私の場合,for ループは慣れから int を使いますけど,その他のローカル変数では圧倒的に var が多いです.

あ、やっぱりそうですか。
僕も、慣れから int を使ってたんですけど、これだけ var だらけで書いていると、for も統一しないといけないような気がしてきて・・・

>しかしどうも var ばっかり話題になりますが,let も似たような感じで使えて,かつ再代入不可と気持ちよく使えますよ.

純粋に知りませんでした^^;
早速使ってみます。

タイトル
名前
Url
コメント