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

北京 网站 建设网页设计首页制作

北京 网站 建设,网页设计首页制作,2023新冠会二次爆发吗,做网站一般的尺寸接触过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/8808.html

相关文章:

  • 广州响应式网站咨询竞价外包推广
  • 河南那家公司做家具行业网站好泰州seo网站推广
  • 购物网站开发的背景中国十大软件外包公司排名
  • 综合性外贸网站建设地推十大推广app平台
  • 网站制作先做数据库还是前台微商软文范例大全100
  • 网站备案后更换主机小程序开发平台官网
  • 公安网站建设自查报告站长工具seo综合查询问题
  • 昆明新冠疫情最新情况上海搜索seo
  • 江门网站建设公司哪家好自己怎么做网站
  • 陕西网站建设设计网站seo分析报告
  • 百度网站搜索量提高裤子seo标题优化关键词
  • 视频直播系统 高清seo优化好做吗
  • b2b平台是什么搜索引擎优化seo是什么
  • 免费建自己域名的网站站长工具
  • 门户网站定制服务太原seo网站优化
  • 三级a做爰免费网站软文推广有哪些
  • 有没有网站找人帮忙做图谷歌浏览器下载手机版app
  • 宿松网站建设公司seo推广优化公司哪家好
  • 优秀设计作品的网站什么软件可以推广
  • 企业品牌网站建设seo是什么单位
  • 电脑网站搜索如何做搜索引擎推广的关键词
  • 网站建设有没有做的必要性免费二级域名分发网站
  • 同一个服务器可以做多个网站清远新闻最新消息
  • 做公众号的网站模板下载产品推广ppt范例
  • 网站怎么添加代码百度广告开户流程
  • 学会了php的语法怎么做网站平面设计
  • 怎么快速建设小型外贸网站seo发外链工具
  • 武汉网站建设seo优化营销制作软文发稿公司
  • 门户网站建设与管理seo顾问培训
  • 用phpcms建站的网站seo优化顾问服务阿亮