C++ 中應何時使用 static_cast、dynamic_cast、const_cast 和 reinterpret_cast?
const_cast
可以用於移除或新增變數的 const。如果需要向變數新增/移除 const,則此 cast 很有用。
static_cast
用於正常的/普通的型別轉換。此 cast 還負責隱式型別強制轉換,也可以顯式呼叫。應在將浮點數轉換為整數、字元轉換為整數等情況下使用它。
dynamic_cast
此 cast 用於處理多型。當強制轉換為派生類時,你只需使用該 cast。這僅在從基類強制轉換為派生類時的繼承中使用。
reinterpret_cast
此 cast 最棘手。用於重新解釋位模式,且極其底層。主要用於將原始資料位流變為實際資料或將資料儲存在對齊指標的低位這樣的事項。
廣告
資料結構
網路
關係型資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP