能幫忙做網(wǎng)站建設(shè)優(yōu)秀的網(wǎng)頁(yè)設(shè)計(jì)網(wǎng)站
C++20之前如果想對(duì)不同的指針之間做類型轉(zhuǎn)換需要通過reinterpret_cast,對(duì)于整數(shù)與指針之前的轉(zhuǎn)換也需要通過reinterpret_cast:
C++:reinterpret_cast_c++ reparant_cast_風(fēng)靜如云的博客-CSDN博客
但是reinterpret_cast的缺點(diǎn)是不同的編譯環(huán)境下,無(wú)法包裝轉(zhuǎn)型的安全一致。
C++20增加了bit_cast,可以完成指針間以及指針與整數(shù)間的轉(zhuǎn)換,但需一個(gè)前提條件,就是轉(zhuǎn)型前的類型與轉(zhuǎn)型后的類型所占有的內(nèi)存空間是一樣大的:
template <class To, class From> typename