當進行從變量的類型轉換到一個參考,如:C++從可變類型轉換到參考
float f = 1.0f;
int a = (int&) f;
std::cout << a;
爲什麼會浮點值的實際比特表示(而不是數值)。
當進行從變量的類型轉換到一個參考,如:C++從可變類型轉換到參考
float f = 1.0f;
int a = (int&) f;
std::cout << a;
爲什麼會浮點值的實際比特表示(而不是數值)。
你的代碼是不確定的行爲,從技術上來講。你的C風格演員做了reinterpret_cast
這是沒有被定義爲收斂float
左值int&
。也許你只是想投到int
?
爲什麼要將變量轉換爲引用,然後將其存儲在變量中?
因爲C++中的引用意味着「另一個名稱」。所以當你將一些東西轉換爲引用時,你只需要給它一個名字,而不是執行從浮動到整數的值轉換。
+1,雖然在這種情況下它是一個匿名名稱;-) – 2010-12-07 16:47:17