Các kiểu:
reinterpret_cast thao tác với các con trỏ tương tự như các toán tử chuyển đổi thông thường. Kết quả của việc casting đơn giản là việc copy dữ liệu quản lý bởi một con trỏ sang con trỏ khác. Do đó nó có thể casting giữa tất cả các kiểu dữ liệu, kể cả các lớp không có quan hệ với nhau.
Khi sử dụng reinterpret_cast, lập trình viên cần hiểu rõ mình đang làm gì, vì hầu hết quá trình casting với reinterpret_cast đều hợp lệ và không thông báo lỗi trong quá trình build.
VD: uint16_t *code_array = reinterpret_cast<uint16_t*>(malloc(count * sizeof(uint16_t)));