C++转型

C风格的转型动作

(T) expression // 将expression转型为T
```
T(expression) // 将expression转型为T

两种形式并无差别,纯粹是小括号的的摆放位置不同而已。

C++的转型动作

C++提供了四种新式转型(常常被称为new-style或C++-style casts)

  1. const_cast (expression)
  2. dynamic_cast (expression)
  3. reinterpre_cast (expression)
  4. static_cast (expression)

各有不同的目的:

const_cast通常被用来将对象的常量性转除(cast away the constness)。它也是唯一有此能力的C++ style 转型操作符。

dynamic_cast主要用来执行“安全向下转型”(safe downcasting),也就是用来决定某对象是否归属继承体系中的某个类型。它是唯一无法由C语法转型执行的动作,也是唯一可能耗费重大运行成本的转型动作。

retinterpret_cast 意图执行低级转型,实际动作(及结果)可能取决于编译器,这也就代表它不可移植。例如将一个pointer to int转型为一个int。这一类转型在低级代码以外很少见。

static_cast用来强迫隐式转换(implicit conversion),例如将non-const对象转为const对象,或将int转为double等等。它也可以用来执行上述多种转换的反向转换,例如将void* 指针转为typed指针,将pointer-to-base转为pointer-to-derived。但它无法将const转为non-const—这个只是const_cast才能办得到。

时间: 2024-10-10 00:31:09

C++转型的相关文章

微软要做用云量挖掘机,以技术驱动数字化转型快公司

今年7月,首次更名为"Inspire"的微软WPC全球合作伙伴大会上,微软宣布将所有与合作伙伴相关的角色都重新整合为一个新的部门:统一商业合作伙伴部门(One Commercial Partner),并进行了一整套的组织和流程改组,以适应云计算时代的用户需求与"用云量"规律. 2017年9月12日,微软大中华区副总裁.全球渠道事业部总经理.商业客户事业部总经理包嘉峰与媒体分享了这两个月微软商业合作伙伴部转型以来,微软自身所发生的变化以及为客户所带来的价值.根据包嘉峰

开发人员转型到管理者必须学会的7件事

技术工程师的晋升之路 技术工程师的晋升之路大体上可以分为两个方向,一是在技术方向上作为Individual Contributor(IC)继续深造,二是以管理者的身份管理工程师团队.IC这条路比较单纯,能走多远主要取决于个人的技术实力与经验.与IC相比,转型为管理者可以说是一种颠覆性的变化.管理者的工作不再是以个人或项目的成功作为主要目标,而是专注于整个团队的成功.这种目标的变化将直接改变管理者的心态与工作方式,以及与他人的互动方式.可以说,向管理者的转型是一个具有更大挑战性的选择. David

一店千面 苏宁转型难在复杂求简

近日,苏宁通过PPTV视频节目<亮剑818>发布"百日会战"总攻令,宣布将从8月份开始发起"百日会战".看到这条消息,我"泪流满面",重点当然不是"百日会战",而是苏宁终于在花大价钱购买PPTV以后,总算真正用上了一次.事实上,近年来苏宁明显感受到来自天猫.京东.易迅等电商的压力,迫切地寻求转型.不断寻求突破机遇,接连将触手伸到多个领域,但结果却都是赔了夫人又折兵. 7月底,苏宁发布2014上半年业绩快报,在201

为什么媒体集体唱衰迪信通转型

7月8日在国内有着21年历史的移动通讯连锁迪信通将在港交所挂牌上市.此前迪信通,曾经两度谋求海内外市场上市,一次是2005年前后准备香港上市最后因特殊原因取消筹备,另一次是2011年国内A股IPO失败.虽然此次在香港因获得虚拟运营商牌照终于成挂牌上市,但国内众多媒体都对曾经号称业界"手机连锁之王" 的迪信通转型并不看好,甚至出现了集体唱衰.其关键原因就是迪信通核心业务因持续盈利能力不足.毛利依赖率高,转型不明.且不管是实体连锁还是电商业务等在业内竞争都十分激烈,摆在其眼前,不管是对内还

企业信息化互联网转型“生死劫”

文/冯强 虽然大学专业是计算机软件,其实最有兴趣也学得最好的却是"模电.数电,汇编.单片机原理",当年要不是手续太麻烦就转到无线电系了.从初中开始,俺对无线电就相当着迷,理所当然的毕业进了厂(当年还不是公司),彩电装调维修实习一年后,彩电工艺技术搞了五年.如果不是因为专业原因,被一纸调令弄去搞编程,可能就和企业信息化没什么交集了. 企业信息化搞了N年,在90年代"不上ERP等死,上ERP找死"的时期,经历了ERP从选型,立项,上线,实施的全过程,而且亲自参与杀死了自

Java表达式转型规则

Java表达式转型规则由低到高转换: 1.所有的byte,short,char型的值将被提升为int型: 2.如果有一个操作数是long型,计算结果是long型: 3.如果有一个操作数是float型,计算结果是float型: 4.如果有一个操作数是double型,计算结果是double型: 5.被fianl修饰的变量不会自动改变类型,当2个final修饰相操作时,结果会根据左边变量的类型而转化.

Java向上转型和向下转型(附具体样例)

                                            Java向上转型和向下转型(附具体样例) 熬夜整理的关于Java向上和向下转型的样例,很的通俗易懂哦~~~~ 一.向上转型 package com.sheepmu; class Animal { public void eat() { System.out.println("父类的 eating..."); } } class Bird extends Animal { @Override publ

接口回调和向上转型

抄别人的,但为了自己掌握更加的踏实,所以复制到这里,拜谢原创!http://blog.csdn.net/u014025369/article/details/24707525 接口回调是指:可以把使用实现了某一接口的类创建的对象的引用赋给该接口声明的接口变量,那么该接口变量就可以调用被类实现的接口的方法.实际上,当接口变量调用被类实现的接口中的方法时,就是通知相应的对象调用接口的方法,这一过程称为对象功能的接口回调.看下面示例.interface People {     void people

业务运维:站在企业转型风口上的云智慧

文:胖头陀 云智慧绝对不是一间大的公司. 尽管在所处的"江湖"里,它已经是响当当的角色,然而毕竟原先的市场领域相对狭小,于是殷晋总会有些使不出力的感受. 殷晋是云智慧的创始人,云智慧是他创办的第一家企业. 没有人愿意一辈子做一家小公司,殷晋当然也不例外. 谁不希望自己的公司有谷歌那样的体量?记得当年创办云智慧的时候,殷晋就已经具有了国际化的意识,尽管首批投资并不是非常充裕,他仍花费不菲买下了cloudwise.com这个国际化的顶级域名. 云智慧的业务领域是"为企业级用户提供

飞凡商业博览会缔造实体转型加速度

2016年已过去大半,如果要问今年迄今为止,出现在科技界和经济领域最高频的词,恐怕没有人会质疑“创新”和“智能”.移动互联网正在承接互联网时代的下一次变革机遇,这次实体并没有沉默. 实体行业洞悉未来风口最好的风向标,无疑是刚刚结束的飞凡商业博览会.作为实体商业领域规模最大的一次行业盛会,飞凡商业博览会给予业内人士深入判断实体商业未来走向,进而洞悉整个实体发展趋势的大好机会.大会吸引了4.5万参会者,超过8000余个知名品牌及3000多位全国及区域代理商参会,大家聚集于此,目的并不仅仅是招商和合作