C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

ログ内検索
  • キーワードを複数指定する場合は 半角スペース で区切ってください。
  • 検索条件は、(AND)=[A かつ B] (OR)=[A または B] となっています。
  • [返信]をクリックすると返信ページへ移動します。
キーワード/ 検索条件 /
検索範囲/ 強調表示/ ON (自動リンクOFF)
結果表示件数/ 記事No検索/ ON
大文字と小文字を区別する

No.85125 の関連記事表示

<< 0 >>
■85125  Re[2]: C#のカウント
□投稿者/ 大谷刑部 -(2017/09/12(Tue) 10:55:44)
    No85120 (魔界の仮面弁士 さん) に返信
    > ■No85118 (しろ さん) に返信
    >>釦を押すごとにカウント
    >
    > private int counter;
    > private void Form1_Load(object sender, EventArgs e)
    > {
    >   counter = 0;
    >   label1.Text = counter.ToString("N0");
    > }
    > private void button1_Click(object sender, EventArgs e)
    > {
    >   label1.Text = (++counter).ToString("N0");
    > }
    >
    > Public Class Form1
    >   Private counter As Integer
    >   Private Sub Form1_Load(sender As Object, e As EventArgs) Handles MyBase.Load
    >     counter = 0
    >     Label1.Text = counter.ToString("N0")
    >   End Sub
    >   Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) Handles Button1.Click
    >     counter += 1
    >     Label1.Text = counter.ToString("N0")
    >   End Sub
    > End Class

    ちなみに+=はVBでも使えます。(.Netの初期から)
    そもそもVBとC#でできることにそんなに差はないかと。
    特に最近は構文がBasic系とC系の違いがある以外は、
    ほとんど違いを感じません。


    >>Label1.Text = Label1.Text + 1
    >
    > VB のそれは、Option Strict On ではエラーになるのご注意ください。
    >
    > Option Strict Off の場合に限りコンパイルが通りますが、その場合は
    >  Label1.Text = CStr(CDbl(Label1.Text) + 1.0)
    > に相当するコードとして処理されることになります。

    むしろこのやり方の方がVB6チックな感じが。
    魔界の仮面弁士 さんがご指摘の通り、
    非明示変換が発生するのでやるとしても整数のみの方がよいでしょう。
    小数で型変換を指定しない場合は2進型であるdoubleで内部処理されるので
    端数ずれの元です。
記事No.85118 のレス /過去ログ145より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -