2012-03-22 67 views
1
DXVA2_Fixed32 a = DXVA2_Fixed32OpaqueAlpha(); 

    float f = (float)a; 

這是拋出一個編譯錯誤鑄字DXVA2_Fixed32漂浮在C++

「錯誤C2440:無法從 」「 轉換。到浮動

我的目的是分配」 DXVA2_Fixed32一「的值爲」f「

任何人都可以告訴我如何將DXVA2_Fixed32類型變量」a「賦值給」浮點變量f「。

在此先感謝。

回答

1

你不能用這樣的類型轉換來做到這一點。 DXVA2_Fixed32類型是一個包含兩個字段的結構,其中包含數字的小數部分和整數部分。

您需要致電DXVA2FixedToFloat才能執行轉換。

float f = DXVA2FixedToFloat(a); 

要是你需要,你可以使用預先命名DXVA2FloatToFixed向相反的方向走。

+0

再一次令人難以置信的快速和正確的響應。非常感謝David! Stackoverflow很簡單。 :) – codeLover 2012-03-22 14:34:58