人気ブログランキング | 話題のタグを見る
(vb.net)VB.Net、VB2005で変わった点1
プログラム人生の最初にCをやってるせいか、VB6のプロジェクトに入ったとき、IF文の評価の時に、たとえば

If 最初の条件式 And 2つ目の条件式 Then
....
End If

というコードの時、"最初の条件式"の結果が False でも"2つ目の条件式"は評価されてしまう という事実になかなか慣れれませんでした。

さらにループ中でCやJavaでは contineu; があるなのに、なぜにVB6はないのだ。このせいで余計にIf文のネストが深くなる。という悲壮な気持ちになったこともありました。
さらには変数宣言と同時になぜ初期化できないのかとか、まあVB6への不満は山ほどありましたが。。

どうやらVB.Netではこの点は大きく改善されているようです。

最初の複数の条件式を判断する部分ではVB.Netには "AndAlso" と "OrElse" という演算子が追加されています。

AndAlso はC言語の && と同じ意味、OrElse はC言語の || と同じ意味です。
具体的なコードはこちらにコード付きで詳しく説明されています。
パフォーマンス的にもAndAlso、OrElseを使ったほうがよ下げみたいですね。


contineuについてはC,Javaは知ってる方ならわかると思います。まさにC,Javaのcotinue文をそのまま移植したという感じです。
また、"IsNot" 演算子ができたため、

If Not myObj Is Nothing Then

というようなコード

If myObj IsNot Nothing Then

というようによりシンプルに書くことが可能になったみたいです。
しかし、この2つはVB2005からの機能みたいです。

VB2005の変更点は下記MSサイトに詳しく出てます。
http://www.microsoft.com/japan/msdn/vs05/vbasic/languageenhancements.aspx#languageenhancements_topic8

(タイトルに"1"とかって書いてますが、いつのことになるやら。。。)
by jehoshaphat | 2008-04-14 14:59 | .Net開発


<< (.Net)インスタンスをコピ... .NET Frameworkの... >>