C++內置類型轉換規則主要包括以下幾種:
整數提升(Integer Promotion):在表達式中,如果既有整型又有浮點型,那么整型會被自動轉換為浮點型。例如,當整數和浮點數相加時,整數會被轉換為浮點數。
浮點數提升(Floating Point Promotion):在表達式中,如果既有整型又有浮點型,那么浮點型會被自動提升為整數類型,整數位數為浮點數的位數。例如,當整型被賦值給浮點數時,整數值會被轉換為浮點數。
隱式類型轉換(Implicit Type Conversion):C++支持隱式類型轉換,包括:
顯式類型轉換(Explicit Type Conversion):C++支持顯式類型轉換,包括:
int到float。const int轉換為int。int*轉換為char*。類型轉換運算符(Type Conversion Operators):C++支持自定義類型轉換運算符,例如將一個類轉換為另一個類。這些運算符可以是隱式的或顯式的。