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

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

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

No.90955 の関連記事表示

<< 0 >>
■90955  Re[1]: 型変換の処理速度について
□投稿者/ とっちゃん -(2019/05/14(Tue) 21:24:07)
    No90946 (悩み中 さん) に返信
    
    > 1)CstrとTostringでは、どちらの方が処理速度が速いでしょうか?
    > 2)明示的型変換(CINT,CLNG等指定)と暗黙の型変換(指定無し)では、どちらの方が処理速度が速いでしょうか?
    > 
    確認の方法がわからないということで、一つだけ計測サンプルコードを書いておきます。
    
    VBでコンソールアプリを作成して、下記コードを張り付ければ動くと思います。
    下記のコードは、CStr の計測例です。
    環境によって、100000000 の部分の数字を大きくすればそれだけ平均値が均一化します。
    あくまでも平均値なので、環境に依存しますが、これを比較したいものごとに用意して
    いろいろと計測してみれば、ざっくり程度ですが、簡単な計測ができます。
    
    最初に一回ループの外側で呼び出しているのは、JIT分をカウントさせないための工夫です。
    ちなみに、デバッグ版で私の環境で下記コードは約7秒でした。
    ToStringとどっちが早いか?は計測していません。
    
    私も知りたいので、計測結果を上げてくれると嬉しいです。
    あと、その際のTestメソッドの中身も書いてもらえると嬉しいです。
    (初めて VB.NETなプロジェクト作ってコード書いたかもw)
    
    Module Module1
      Sub Main()
        TestCstr()
        Dim st As Stopwatch = New Stopwatch
        st.Start()
        For index = 1 To 100000000
          TestCstr()
        Next
        st.Stop()
        Console.WriteLine(st.Elapsed.ToString())
        'この下に、同じようにToStringでの計測を記述する
      End Sub
    
      Private Function TestCstr() As String
        Dim val As String = CStr(10)
        Return val
      End Function
    End Module
    
記事No.90946 のレス /過去ログ157より / 関連記事表示
削除チェック/



<< 0 >>

パスワード/

- Child Tree -