c++中一些强制类型转化

C语言中经常可以见到一些强制类型转化,主要是在变量名前加(类型)。而在c++中与c语言也有一些差异,C++中主要有四种强制类型转化。

创新互联,专注为中小企业提供官网建设、营销型网站制作、成都响应式网站建设公司、展示型网站制作、做网站等服务,帮助中小企业通过网站体现价值、有效益。帮助企业快速建站、解决网站建设与网站营销推广问题。

  1. static_cast它的主要转化是对于相关类型之间的转化

    int main()

    {

    float a = 1.2;

    int b = static_cast(a);

    cout << b << endl;

    getchar();

    return 0;

    }

2.reinterpret_cast它的主要转化是对于不相关类型之间的转化

int main()

{

int a = 1;

int *p = &a;

int b = reinterpret_cast(p);

cout << b << endl;

getchar();

return 0;

}

3.const_cast 是解除const类型的变量,使之可以改变变量的值

int main()

{

volatile const int a = 1;

int *p = const_cast(&a);

*p = 2;

cout << a << endl;

getchar();

return 0;

}

4.dynamic_cast是动态转化,它主要作用:1.只能用于含有虚函数的类 2.先检查是否转化成功,若成功转化则转换,若不能就返回0

class A

{

public:

int _a;

virtual void show()

{}

};

class B :public A

{

public:

int _b;

};

void test()

{

A a;

B b;

B *pb =dynamic_cast(&a);

cout << pb << endl;

}

int main()

{

test();

getchar();

return 0;

}


网页标题:c++中一些强制类型转化
文章出自:http://hxwzsj.com/article/pceoih.html
Copyright © 2025 青羊区翔捷宏鑫字牌设计制作工作室(个体工商户) All Rights Reserved 蜀ICP备2025123194号-14
友情链接: 高端网站建设 营销型网站建设 网站建设 高端网站设计 成都网站建设公司 成都网站设计 营销型网站建设 网站建设 营销型网站建设 响应式网站设计 网站设计制作 成都定制网站建设 专业网站建设 梓潼网站设计 成都网站建设 响应式网站建设 四川成都网站建设 网站制作 手机网站制作 移动手机网站制作 成都模版网站建设 网站建设开发