Val関数の意味とは?

解決


のりだぁ=  2007-02-20 03:47:05  No: 98072

次の2つのプログラムコードは実行すると同じ動きをするのですが、意味の違いはどこにあるのでしょうか?ご教授宜しくお願い致します。
コード①
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Label1.Text = Val(Label1.Text) + 1
End Sub

コード②
Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Label1.Text = Label1.Text + 1
End Sub


大吉末吉  2007-02-20 05:02:24  No: 98073

> 次の2つのプログラムコードは実行すると同じ動きをするのですが
「Option Strict On」にしてみてください。
(2)は、エラーで動かないはずです。


大吉末吉  2007-02-20 05:10:08  No: 98074

良く見ると、(「Option Strict On」にすると)(1)もエラーで動かないですね・・・

要するに、(2)は(実際は(1)も)『「暗黙の型変換」に頼った書き方』と言うことです。


のりだぁ=  2007-02-20 06:18:41  No: 98075

大吉末吉さんへ>
ご教授ありがとうございました。
コード①も②もVBが適当な型に変換していると理解すれば宜しいのでしょうか?ところで、初心者なもので、Option Strict Onにするにはどうすれば良いか分かりません。教えて頂けないでしょうか?


大吉末吉  2007-02-20 06:36:19  No: 98076

> コード①も②もVBが適当な型に変換していると理解すれば宜しいのでしょうか?
そうです。
#「適切」では無く「適当」・・・なのかな。

> 初心者なもので、Option Strict Onにするにはどうすれば良いか分かりません。

ファイルの先頭に「Option Strict On」と記述するだけです。
#「初心者」云々関係なく、調べれば分かると思いますけど・・・

一応参考まで。

「Option Strict ステートメント 」
http://msdn2.microsoft.com/ja-jp/library/zcd4xwzs(VS.80).aspx

「5.1.2 Option Strict ステートメント」
http://msdn.microsoft.com/library/ja/default.asp?url=/library/ja/vbls7/html/vblrfvbspec5_1_2.asp

「[INFO] Visual Basic .NET の Option Explicit および Option Strict」
http://support.microsoft.com/kb/311329/ja


のりだぁ=  2007-02-21 00:18:14  No: 98077

丁寧に説明して頂き、ありがとうございました。私の中では解決しました。


GOD  2007-02-21 07:55:08  No: 98078

.NETはやったことがないので、ちょっと確認したいのですが
Label1.Text=""
とした時も同じ動きしてましたか?


※返信する前に利用規約をご確認ください。

※Google reCAPTCHA認証からCloudflare Turnstile認証へ変更しました。






  このエントリーをはてなブックマークに追加