在4.14 http://eel.is/c++draft/conv.bool#1爲什麼布爾轉換明確提到prvalue
它說:
甲prvalue算術,無作用域枚舉,指針,或指針的到 成員類型可以被轉換爲一個bool類型的價值。
爲什麼要特別強調prvalue?
算術類型的左值也可以轉換爲布爾值。
在4.14 http://eel.is/c++draft/conv.bool#1爲什麼布爾轉換明確提到prvalue
它說:
甲prvalue算術,無作用域枚舉,指針,或指針的到 成員類型可以被轉換爲一個bool類型的價值。
爲什麼要特別強調prvalue?
算術類型的左值也可以轉換爲布爾值。
該標準不希望布爾轉換影響左值,所以它不允許它。
您當然可以將算術類型的左值轉換爲類型bool
,但它不是通過(僅)布爾轉換完成的。將算術左值轉換爲bool
是標準轉換序列,其由左值到右值轉換,後面跟着布爾轉換組成。
*算術類型的左值也可以轉換爲bool * - 現在瞭解標準如何定義這種轉換。 – chris