目录文章:C++中运算符的优先级
C++中有三种类型转换运算符:(type)name,type(name),type{name}。
其中,第一种叫做C风格转换运算符,第二种和第三种叫做函数风格转换运算符。
在类型名为long long、unsigned int、long double这样的中间带空格的名称时,需要在外面加一层小括号。
在转换的表达式的优先级低于类型转换运算符时,需要在外面加一层小括号或大括号。
综合以上,还可以得出两种形式:(type)(name) 和 (type){name} 。
可以类型转换的类型:
- 任意普通类型(即非指针、非数组、非自定义类型)转换成任意普通类型;
- 任意指针(包括自定义类型的指针)转换成 void* ;
- 其它类型均不可转换(除了重载类型转换运算符,但是对于C++本身的其它类型来说绝对不能转换)。
欢迎转载,但请在文章中附加上本文链接: https://blog.csdn.net/weixin_41461277/article/details/85160357 。