c++中static_cast是干嘛的啊?

哪位大神说具体点。感激不尽... 哪位大神说具体点。感激不尽 展开
 我来答
蓝汉不S
2012-12-27 · TA获得超过405个赞
知道答主
回答量:90
采纳率:100%
帮助的人:52.8万
展开全部
强制转化,就是把一个类型的变量a强制赋值给另外类型的变量b,如果能成功,变量b就具有一个值,如果不能成功就抛出一个错误。
C++共有四种转换:static_cast,dynamic_cast,reinterpret_cast,const_cast
static_cast相当于传统的C语言里的强制转换,效果就相当于加个括号:int a=(long)b;
建议用搜索一下 static_cast 这个词,你能学到更多东西。
维多K
推荐于2018-11-15 · TA获得超过412个赞
知道小有建树答主
回答量:169
采纳率:0%
帮助的人:168万
展开全部
static_cast在C++中用于将表达式的值转换为指定的类型,但没有运行时类型检查来保证转换的安全性。
主要有以下用法:
(1)用于类层次结构中基类(父类)和派生类(子类)之间指针或引用的转换。
(2)用于基本数据类型之间的转换,如把int转换成char,把int转换成enum。这种转换的安全性也要开发人员来保证。
(3)把空指针转换成目标类型的空指针。
(4)把任何类型的表达式转换成void类型。
注意:static_cast不能转换掉expression的const、volatile、或者__unaligned属性。

参考资料: http://baike.baidu.com/view/1745207.htm

本回答被提问者和网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
yf276075481
2012-12-27
知道答主
回答量:45
采纳率:0%
帮助的人:12.9万
展开全部
打酱油的
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 2条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式