他ならぬ娘の頼みで慣れぬVBをいぢくりまわしておりまする。
Sub Main()
Dim x As Integer ' 関数スコープ内の変数 x
If うにゃうにゃ Then
Dim x As Integer ' If内で使い捨ての x
....
End If
End Sub
→ error BC30616: 変数 'x' は、それを囲むブロック内の変数を非表示にします。
...ぐはぁ。 If ブロックはスコープを作ってはくれないのか。
使い捨て変数にいちいち別名与えにゃならんのスカ?
そのくせ
For I As Integer = 0 To 10 ' ループ変数 I
Next
For I As Integer = 0 To 10 ' 再利用
Next
これは許すのか。
このテのC++/C#とのビミョーな差異にはなかなか慣れません orz
1対1に対応してるやつはどってことないんですけどね。
[追記] スコープできてました。僕の勇み足です。
「スコープ内では外の名前とカブっちゃだめ」てことなのね。
C++では許すもんだから...