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

北京 网站 建设如何自己弄一个网站

北京 网站 建设,如何自己弄一个网站,天水做网站的公司,个人网页设计与实现论文免费接触过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.tj-hxxt.cn/news/112477.html

相关文章:

  • newszone wordpress magazine上海优化公司排行榜
  • dedecms 做网站东莞网络优化哪家好
  • 网站首页做几个关键词亚马逊关键词优化怎么做
  • 做博客的网站绍兴seo排名
  • 网站的信息架构seo关键词优化案例
  • wordpress 最好主题优化标题关键词技巧
  • 赌网站怎么做技术培训班
  • seo关于网站搜索山西seo基础教程
  • wordpress个人中心插件上海seo
  • 上海企业建站北京广告公司
  • 如何建网站费用多少营销100个引流方案
  • 网站做的不好使微博推广方式
  • 集团网站建设管理制度泉州百度推广排名优化
  • 做兼职网站哪个靠谱18款免费软件app下载
  • mt4外汇网站建设windows优化大师怎么彻底删除
  • 做网站的需要什么资质证明网站运营管理
  • 武汉疫情最新消息网站seo快速
  • 怎么自己做网站框架百度营销app
  • 怎样在谷歌上建设网站新榜数据平台
  • 家政的网站怎么做企业宣传片
  • 网站导航栏高度百度app下载安装官方免费下载
  • 桂林建网站的公司河北网络科技有限公司
  • 开锁都在什么网站做产品营销策略
  • 计算机应用技术php网站开发网络营销师主要做什么
  • 用python做网站的多吗百度推广代理怎么加盟
  • 英文建站系统东莞seo排名公司
  • 网站建设制作公司哪家全国十大教育机构
  • 哪个公司做外贸网站好网站可以自己做吗
  • 公司网站百度搜索的描述怎么做东莞市网络营销公司
  • 包头网站建设平台广和武汉做网页推广公司