static_cast: chuyển kiểu dữ liệu bình thường như int -> char,...
dynamic_cast: chuyển đổi kiểu con trỏ (hoặc kiểu tham chiếu) giữa các lớp đa hình trong đa kế thừa.
reinterpret_cast: chuyển đổi giữa 2 kiểu dữ liệu ko có mối liên hệ, vd như là int -> pointer,...
const_cast: bỏ const ra khỏi dữ liệu được chuyển đổi.