我使用typedef float engtype
和typedef double engtype
在float
和double
之間進行快速更改以進行一些測試。當我做這個例如C++避免使用typedef進行類型轉換警告
engtype rmwt = 20.75;
engtype Rgas = 8314.28/rmwt;
編譯器可能的數據丟失或截斷的抱怨轉換從double
到engtype
。爲了讓這個警告消失,我做了這個
engtype rmwt = 20.75;
engtype Rgas = static_cast<engtype>(8314.28)/rmwt;
這似乎有點荒謬。我搜索了一種方法,使其默認爲engtype
,但沒有找到任何東西。 typedef
的這種用法是否正確?我應該如何處理警告?我知道我可以忽略它們,但應該有一個「正確」的方法來清除它們。
您使用哪種編譯器? – cup
想知道你沒有收到編譯錯誤? – user258367
編譯器是MSVS 2013.代碼運行正常並不是錯誤。只是給了一堆警告。 – Matt