C 筆記5型別轉換

2021-09-01 16:02:30 字數 852 閱讀 7063

以下**的開頭**

#include using namespace std;
c++型別轉換

原始型別轉換,所有情況都是一種寫法,可讀性不高,有可能有潛在的風險

void* func(int type)

case 2:

default:

} }void func2(char* c_p)

void main()

void func(const char c)

void main()

class person

};class man : public person

void chasing()

};class woman : public person

void carebaby()

};void func(person* obj)

woman* w = dynamic_cast(obj);

if (w != null)

}void main()

不具備移植性:某些編譯器可能不支援。

reinterpret_cast的最常用用途是轉換「函式指標」型別。假設有乙個陣列儲存的都是函式指標,有特定的型別:

void func1()

char* func2()

typedef void(*f_p)();

void main()

typedef void(*funcptr)(); //funcptr是個指標,指向某個函式,這個函式返回的是void(函式指標)

C 學習筆記 07 型別轉換

型別轉換 賦值轉換 賦值轉換指的是將一種型別的值賦給另一種型別的變數,這時,值將會轉換為接收變數的型別,如語句 a b 如果a是long型,b是short型,則程式會將16位 short佔兩位元組 的b提公升為32位 long佔4位元組 並賦給a,直觀上講,型別的表達能力取決於該型別所佔的記憶體位數...

C 學習筆記13 型別轉換

const cast 運算子用於修改型別的 const volatile 屬性。除了 const 或 volatile 屬性之外,目標型別必須與源型別相同。這種型別的轉換主要是用來操作所傳物件的 const 屬性,可以加上 const 屬性,也可以去掉 const 屬性。class a void f...

C 入門經典學習5 型別轉換

c 入門經典學習5 型別轉換 隱式轉換 任何型別a,只要其取值範圍完全包含在型別b的取值範圍內,就可以隱式轉換為型別b。顯示轉換 checked unchecked convert 列舉 enum 預設是int 可以指定,可以用 賦值,值可以重複。string轉換為列舉用enum.parse 結構 ...