2011-05-31 71 views
0

哪個在C#中最快?假設我有一個64位的浮點數。將它轉換爲32位整數或64位整數(假設數據丟失與我無關)會更快嗎?哪個演員最快?

+3

轉換速度(永遠)真的是限制因素嗎?您可以嘗試使用System.Diagnostics和Stopwatch多次執行此操作。另外,你是四捨五入嗎?截斷?處理器是64位的嗎?操作系統是64位的嗎? – tofutim 2011-05-31 06:10:51

+1

我不知道,測量一下。儘管它可能取決於當前配置是否支持本機64位類型。 – 2011-05-31 06:12:02

回答

4

有幾種方法可以找到,每個方法都有各自的優點。

  • 實驗證據:做大量的每一個鑄造在一個大規模的循環和時間他們,試圖保持所有其他可能的因素一致。
  • 查看兩個鑄件的機器代碼並對哪個更快進行適當的分析。
  • 問問開發人員。

我,我會選擇第一次作爲第一次運行,因爲這是最容易做的事情,不涉及任何第三方。只有在不清楚的情況下,我纔會轉向第二種方法。

我不會相信任何第三方,除非他們顯示了一些證據,他們可能無法在您的作業截止日前回復給您。