创作人QQ:851301776,邮箱:[email protected],欢迎大家一起技术交流,本博客主要是自己学习的心得体会,只为每天进步一点点!
个人座右铭:
1.没有横空出世,只要厚积一定发。
2.你可以学历不高,你可以不上学,但你不能不学习
一、类型转换
1 隐式转换
char c = 'a';
int i = c;//隐式转换
void func(int i){}
func(c);//隐式转换
int func(void)
{
char c = 'a';
return c;//隐式转换
}
2 显式转换
2.1 C++兼容C中强制转换
int i = (int)c;//C风格强制转换
int i = int(c);//C++风格强制转换
2.2 C++增加了四种操作符形式的显式转换
1)静态类型转换
语法:
目标类型变量=static_cast<目标类型>(源类型变量)
适用场景:
主要用于将void*转换为其它类型指针。
#include <iostream>
using namespace std;
int main(void)
{
int i = 123;
int* pi = &i;
//char c = (int)pi;//C风格
char c = int(pi);//C++风格
void* pv = pi;