C++强制类型转换:static_cast、dynamic_cast、const_cast、reinterpret_cast
C++强制类型转换:static_cast、dynamic_cast、const_cast、reinterpret_cast 1. c强制转换与c++强制转换 c语言强制类型转换主要用于基础的数据类型间的转换,语法为: (type-id)expression//转换格式1 type-id(expression)//转换格式2 c++除了能使用c语言的强制类型转换外,还新增了四种强制类型转换:static_cast、dynamic_cast、const_cast、reinterpret_cast,主要运用于继承关系类间的强制转化,语法为: static_cast<new_type> (expression) dynamic_cast<new_type> (expression) const_cast<new_type> (expression) reinterpret_cast<new_type> (expression) 备注:new_type为目标数据类型,expression为原始数据类型变量或者表达式。 《Effective C++》中将c语言强制类型转换称为 旧式转型 ,c++强制类型转换称为 新式转型 。 2. static_cast、dynamic_cast、const_cast、reinterpret_cast static_cast static