在 C++ 中,應該在何時使用 static_cast、dynamic_cast、const_cast 和 reinterpret_cast?
const_cast
可用於為變數去除或新增 const。如果需要為變數新增/去除 constness,則可以使用此運算子。
static_cast
用於正常的/普通的型別轉換。此轉換運算子還負責隱式型別強制轉換,並且可顯式呼叫。你應該在諸如將 float 轉換為 int、char 轉換為 int 等情況下使用它。
dynamic_cast
此轉換運算子用於處理多型性。只有在將型別轉換為派生類時才需要使用它。它僅用於繼承中,即從基類轉換為派生類時。
reinterpret_cast
這是最難使用的運算子。它用於重新解釋位模式,並且是極底層的。它主要用於以下操作:將原始資料位流轉換為實際資料,或將資料儲存在經過對齊的指標的低位中。
廣告
資料結構
網路
關係資料庫管理系統
作業系統
Java
iOS
HTML
CSS
Android
Python
C 程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP