VB.NETで整数型には何を使うべきか?

解決


.net初心者  2006-03-30 04:09:43  No: 94829

以前、どこかのHPで、VB6.0では、Integer型は内部でLong型に変換
されるため、整数型の変数にはLongを使う方が良い、というのを
見たことがあり、VB6.0環境では迷わずLong型を使っていました。

VB.NETでは
          VB6.0      VB.NET
16 ビット Integer    Short
32 ビット Long       Integer
64 ビット (none)     Long
出展:http://www.microsoft.com/japan/msdn/net/vbtransitionguide/chapter4/chapter4_3.asp
となっているようですが、高速化の意味では、64ビットになったLongを使用するべきなのでしょうか?ご教示ください。


魔界の仮面弁士  2006-03-30 05:57:21  No: 94830

処理効率から言えば、Integer型やUInteger型ですね。
http://msdn2.microsoft.com/ja-jp/library/x79h55x9(VS.80).aspx

ただ、後からコードを修正する場合のメンテナンス面を考えれば、
速度差を考慮して選ぶよりも、値の意味や数値範囲で考えた方が
良い場合もあります。

>           VB6.0      VB.NET
> 64 ビット (none)     Long
ちなみに、メモリサイズだけを見れば、VB6 では Currency がこれに相当します。

Currency は、内部的に10000倍した値として保持されているため、単純な整数型として
見る事はできないのですが、GetDiskFreeSpaceEx API などのように、64bit整数を
扱うAPIを呼び出す際に、Currency が使われる事があります。
http://www31.ocn.ne.jp/~heropa/vb08.htm#GetDiskFreeSpaceEx


.net初心者  2006-03-30 06:43:35  No: 94831

了解しました。ありがとうございました。


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

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






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