当前位置: 首页 > news >正文

北京 网站 建设网络广告策划书范文

北京 网站 建设,网络广告策划书范文,网站设计教程,wordpress 文件重命名接触过C语言的朋友都知道,C语言中也有强制类型转换,但是C语言中的强制类型转换会有一些问题,比如: int a 0x1234; char b (char)a; 上述的代码出现一个问题就是a 这个int型强制转化成b 这个char型时损失了一些精度&#xff0c…

接触过C语言的朋友都知道,C语言中也有强制类型转换,但是C语言中的强制类型转换会有一些问题,比如:

int a = 0x1234;
char b = (char)a;

上述的代码出现一个问题就是a 这个int型强制转化成b 这个char型时损失了一些精度,

除此之外,比如没有内存检测(数字转化为地址类型)等。

于是C++中引入了新的类型转换,同时也保留了C语言的类型转换(仅仅是为了兼容C语言),所以在做C++开发时不推荐使用C语言的强制类型转换。

C++强制类型转换主要分4类:static_cast、const_cast、dynamic_cast、reinterpret_cast

1、用法:xxx_cast<要转换的目标类型>(表达式)

2、区别:

① static_cast(没有运行时类型检查来保证转换的安全性)

                用于基本类型间(int double float等)的转换

                不能用于基本类型指针间的转换

                用于有继承关系类对象之间的转换和类指针之间的转换

②const_cast

                去除变量的只读属性

                强制转换的目标类型必须是指针或引用

③reinterpret_cast

                用于指针类型间的强制转换

                用于整数和指针类型间的强制转换

④dynamic_cast

               用于有继承关系类指针之间的转换

               用于有交叉关系类指针之间的转换

               具有类型检查的功能

               需要虚函数的支持

如果一条dynamic_cast语句的转换目标是指针类型并且失败了,则结果为0。如果转换目标是引用类型并且失败了,则dynamic_cast运算符将抛出一个std::bad_cast异常(该异常定义在typeinfo标准库头文件中) 

上述强制转换一定要考虑到数值范围、内存大小问题。

数值问题:比如一个float类型的数据转换为short数据时,肯定会有精度损失(当被转换变量的值超过short的范围)

内存大小问题:比如我们使用static_cast将一个父类指针转换为子类指针,然后我们再操作时访问子类独有的成员时,这很有可能就会出错(比如段错误或者值不对)

http://www.15wanjia.com/news/47886.html

相关文章:

  • 网站建设两年免费维护核心关键词和长尾关键词举例
  • 如何做徽商网站微信公众号seo
  • 做网站什么空间好企业培训课程体系
  • 旅游网站手机模板市场推广方法
  • 番禺定制型网站建设湖南seo排名
  • 上海网站排名优化价格网络营销策划方案书
  • 山东平度疫情最新消息一键优化免费下载
  • 网站开发的背景知识与相关技术91手机用哪个浏览器
  • 在凡科做网站编辑简述如何优化网站的方法
  • 怎么自己做网站吓别人怎么做网站优化排名
  • 柳市那些做网站的公司世界球队最新排名榜
  • 杭州做网站套餐百度浏览器手机版
  • 网站架设建设比较开放的浏览器
  • wordpress无法点上传南昌关键词优化软件
  • 网站开发用户需求说明书中国国家数据统计网
  • 北京做网站百度提交网站收录入口
  • 网站策划与运营泉州百度seo公司
  • 网站建设都会用到哪些建站工具厦门百度竞价
  • 网站设计规划 优帮云西安抖音seo
  • 网站制作与防护费用发稿服务
  • 3g微网站是什么企业网页设计制作
  • 加强网站建设技术培训公司官网怎么制作
  • wordpress 工具栏东莞seo网络优化
  • 苏州朗冠网站建设公司下载百度app下载
  • 已有域名如何在花生壳网站做二级域名托管品牌营销策划方案怎么做
  • 做网站需要提供些什么页面seo关键词排名优化如何
  • 燕窝网站怎么做的搜索优化整站优化
  • 设计好的免费网站建设seo教程
  • 济南制作网站公司重庆森林电影简介
  • 浙江天奥建设集团网站知乎营销平台