[英]Will implicit conversions lose information?
根據https://www.learncpp.com/cpp-tutorial/44-implicit-type-conversion-coercion/
“關於促銷的重要事項是它們始終是安全的,不會導致數據丟失。”
但https://www.geeksforgeeks.org/type-conversion-in-c/表明:
“隱式轉換可能會丟失信息,符號可能會丟失(當簽名被隱式轉換為無符號時),並且可能發生溢出(當long long被隱式轉換為float時)。”
我理解隱式轉換是安全的,但我不知道如何不會導致數據丟失。 哪個准確?
第一篇文章討論了促銷,這是一種特定類型的隱式轉換。 還有其他類型的轉化也是隱式轉化,但不是促銷。 促銷是一種特定類型的隱式轉換,它不會丟失信息,因為您總是會使用更廣泛的類型,即一種類型,其中所提升的類型可表示的所有值都可由升級類型表示( int -> long long
的例子)
其他隱式轉換包括:從有符號轉換為無符號,縮小轉換,浮點轉換為整數轉換。 與促銷不同,這些轉換可能會丟失信
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.