c 中四種型別轉換

2021-09-24 05:16:32 字數 805 閱讀 1171

//2.型別轉換

//c++中的型別轉換

//四種型別裝換符

//static_cast(基礎資料型別的轉換和繼承中父類與子類,指標與引用裝換)

//dynamic_cast(通常在基類和派生類之間轉換時使用)

//const_cast(主要針對const的轉換)

//reinterpret_cast(用於進行沒有任何關聯之間的轉換,比如乙個字元指標轉換為乙個整型數)

stacit_cast

class build{};

class animal{};

class dog:public animal{};

/*void test01()

; */

只能轉換具有繼承關係的指標或引用,在轉換前會進行物件型別的檢查,

/*void test02()

*/ const_cast

//針對指標,引用,或者物件指標(用來去除或者增加const屬性)

void test03()

reinterpret_cast 強制型別轉換 無關的指標型別,包括函式指標都可以轉換。

typedef void (*func)(int,int);

typedef int(*func1)(int, char*);

void test04()

//總結:

//結論1:需要清楚知道轉變的變數,轉換前是什麼型別,轉換後是什麼型別,以及轉換後有什麼後果

//結論2:一般情況下,不建議型別轉換,避免進行型別轉換。

int main()

c 四種型別轉換

c風格的強制型別轉換 type cast 很簡單,不管什麼型別的轉換統統是 type b type a。c 風格的型別轉換提供了4種型別轉換操作符來應對不同場合的應用。const cast,字面上理解就是去const屬性。static cast,命名上理解是靜態型別轉換。如int轉換成char。dy...

C 四種型別轉換

include include includeusing namespace std static cast 用法 static cast type id expression 該運算子把expression轉換為type id型別,但沒有執行時型別檢查來保證轉換的安全性。它主要有如下幾種用法 用於...

C 四種型別轉換

1 static cast 1.上行轉換,把派生類的指標或引用轉換成基類,此時是安全的 2.下行轉換,把基類的指標或者引用轉換成派生類,因為沒有動態監測,所以是不安全的 3.顯示型別轉換,如int轉float等 4.任意型別空指標轉任意型別空指標 5.任意型別表示式轉為void型別 如下 int a...