字符百科

c语言强制类型转换详解(四种强制类型转换)

时间:2024-08-20 10:20:12

C++是一种强类型语言,对类型的检查非常严格,我们可以使用C语言中的(NewType)Expression来对某个变量或者表达式返回值进行强转,也可以使用C++中提供的新式转换操作符:const_cast,dynamic_cast,reinterpret_cast,static_cast。下面介绍着四种转换使用的不同场景。

一,const_cast

const_cast顾名思义,用来将对象的常亮性转除,使常亮可以被修改。const_cast(varible)中的type必须是指针,引用,或者指向对象类型成员的指针。

二,dynamic_cast

用来处理一种“安全向下转换”,当我们将父类指针指向一个new出来的子类A对象时,如果该父类有多个不同子类(class A,class B,),那么可以使用dynamic_cast将该指针类型安全转换为A*,如果使用强转操作符或者下面介绍的static_cast,那么将其转换为B*理论上也是可以的,但是使用上就会有错误

三,reinterpret_cast

是特意用于底层的强制转型,导致实现依赖(就是说,不可移植)的结果,例如,将一个指针转型为一个整数。这样的强制类型在底层代码以外应该极为罕见。操作结果只是简单的从一个指针到别的指针的值的二进制拷贝。在类型之间指向的内容不做任何类型的检查和转换。

四,static_cast

static_cast用来处理隐式转换,等同于C语言中的(NewType)Expression强转,它可以将int转为float,也可以将char*转为int,将指向基类的指针转为一个指向子类的指针,同时可以将non-const转为const对象,但是它不能将一个const对象转为non-const(这个是const_cast的功能)。此处就不再举例。

相关推荐
《王爷追妻火葬场,王妃她改嫁了》小说精彩阅读 《王爷追妻火葬场,王妃她改嫁了》最新章节列表

《王爷追妻火葬场,王妃她改嫁了》小说精彩阅读 《王爷追妻火葬场,王妃她改嫁了》最新章节列表

腊月廿三的小年夜,王府依旧冷冷清清。前院隐约传来丝竹声,是沈烨在宴请几位军中同僚。我的院子里,只有我和小桃两个人。桌上摆着一碗白粥,一碟酱瓜,一碟青菜。小桃陪着我,默默地吃

2025-09-16 15:23:47

《女儿被老公丢给绑匪后,身为商业福星的我杀疯了》大结局精彩阅读 《女儿被老公丢给绑匪后,身为商业福星的我杀疯了》最新章节目录

《女儿被老公丢给绑匪后,身为商业福星的我杀疯了》大结局精彩阅读 《女儿被老公丢给绑匪后,身为商业福星的我杀疯了》最新章节目录

为了他所谓的面子,我被训成温室的花朵,对他的所有红颜知己视而不见。为了他所谓的面子,女儿因不是男孩,被许应淮所有家里人不待见。为了他所谓的面子,他每周去看私生子都以陪我过

2025-09-16 14:27:35

(完本)青柠檬i黄柠檬小说 青柠檬i黄柠檬小说全文免费试读

(完本)青柠檬i黄柠檬小说 青柠檬i黄柠檬小说全文免费试读

我当了陈家八年不能生育的儿媳。婆家所有人都把这当成原罪,以此对我百般欺凌。就在我拿到孕检单的这一刻,我老公发来短信:「别装了,离婚协议明天就签,谁让你生不出孩子。」我将孕

2025-09-16 12:47:02

墨痕杀心小说陆明远墨锭秦墨然墨痕杀心精选章节 黑白风格小说大结局无弹窗

墨痕杀心小说陆明远墨锭秦墨然墨痕杀心精选章节 黑白风格小说大结局无弹窗

楔子暮春的雨,是临渊城最缠绵的墨。细密的雨丝斜斜织了三日,将青石板路浸得发亮,倒映着沿街书肆的幌子——"翰墨堂"的"墨"字被雨水洇开最后一笔,像滴在宣纸上的淡墨;"芸香阁"的木

2025-09-16 12:29:04

【新书】《令窈谢承序》主角佚名全文全章节小说阅读 佚名小说全本无弹窗

【新书】《令窈谢承序》主角佚名全文全章节小说阅读 佚名小说全本无弹窗

2令窈回到丞相府时,天刚蒙蒙亮。她一身嫁衣未换,忍不住质问父亲:“花轿抬错了,您的掌上明珠令婉仪成了太子妃,而我......”“够了!”令肃猛地拍桌,“你还嫌不够丢人?”令窈浑身发冷:

2025-09-16 11:41:06