くだすれVB6.0以前(超初心者向け)
■ このスレッドは過去ログ倉庫に格納されています
0611デフォルトの名無しさん
2007/09/13(木) 14:48:13Currency/Decimalだって何進法でも起こる誤差を避けることは不可能。
ただ、十進法で有限小数となる値の中には、
二進法へ変換すると無限小数になるので正確に表現できない、
つまり有限桁しか扱えないコンピュータでは、それだけで打切り誤差が発生するものがある。
だから十進法中心に考える人間には、一見すると誤差が付き物に思えるだけ。
もちろん、金融では致命的な弱点となるので、Single/Doubleは脱落。
また十進法の浮動小数点数 (VBのDecimal)はどうかというと、
下手に計算すれば情報落ちが問題になりやすいし、
VB固有の事情としてDecimal型の値はVariantに入れるしかないという
不便さもあって、駄目ではないが要注意。
そんなわけでCurrencyに落ち着く。もちろん整数だけなら整数型がよい。
■ このスレッドは過去ログ倉庫に格納されています