簡體   English   中英

隱式轉換會丟失信息嗎?

[英]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.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM