C++ C11 262 标准 C++ C11 262 标准
发布时间
阅读量:
阅读量
1.C++中的类型转换分为四种形式:
在C语言中进行转换操作并没有实际意义。具体来说,在C语言中进行强转操作通常采用(int)(int*)的形式。如果你对此操作的目的或意义感到疑惑,则可能是因为缺乏深入的理解或是相关知识储备不足。这种情况下你会觉得其作用变得模糊不清难以把握。因此,在C++中提供了四种不同的类型转换方式来处理这种情况
static_cast:数据类型的值转换操作,在C++编程环境中等同于强转操作,默认实现是将浮点数值精确地转化为整数类型。
int a = 10;
float ft = 12.23;
a = static_cast<int>(ft);//转成int
ft = static_cast<float>(a);//转成float
const_cast即为强制去除常量转换,在C语言中使用int* p = (int*)&a;的方式时(其意义)不够明确;而在C++中使用int* p = const_cast<int*>(&a);这种情况下(其意义)非常明确
const int a = 10;
int* p = (int*)&a;//C语言方式
int* p = const_cast<int*>(&a);//C++方式
③reinterpret_cast:是
全部评论 (0)
还没有任何评论哟~
