C++ 类型转换

news/2024/11/29 5:35:36/

文章目录

  • 1 类型转换的目的与意义
  • 2 类型转换分类
  • 3 隐式类型转换
  • 4 强制类型转换
    • 4.1 简单强制类型转换
    • 4.2 高级强制类型转换
      • 4.2.1 static_cast
      • 4.2.2 dynamic_cast(多态特性)
      • 4.2.3 reinterpret_cast
      • 4.2.4 const_cast

1 类型转换的目的与意义

参与运算的多个操作数数据类型必须相同。

2 类型转换分类

  • 隐式类型转换
    • 算术转换
    • 赋值转换
    • 输出转换
  • 强制类型转换
    • 简单强制类型转换
      • (type)
    • 高级强制类型转换
      • static_cast
      • dynamic_cast
      • reinterpret_cast
      • const_cast

3 隐式类型转换

4 强制类型转换

4.1 简单强制类型转换

(type)

4.2 高级强制类型转换

静态强制不检查、动态检查转派生、重新变型不检查、常量转变不变型。

4.2.1 static_cast

  • 派生类与基类之间转换
    • 包换指针、引用。
    • 上行安全(不一定)、下行不安全(不一定),即,窄化安全(不一定)。
  • 基本数据类型之间转换
    • 宽化安全(不一定)、窄化不安全(不一定),实际安全由开发者保证。
  • 空类型指针(void *)与其它类型指针转换
  • 任何类型表达式转换为空类型(void)

4.2.2 dynamic_cast(多态特性)

  • 由基类指针转换为派生类指针
    • 失败返回空
  • 由基类引用转换为派生类引用
    • 失败抛出异常(bad_cast)

4.2.3 reinterpret_cast

  • 不同类型之间转换
  • 数值与指针之间转换

4.2.4 const_cast

  • 去除指针或引用 const 属性

http://www.ppmy.cn/news/389933.html

相关文章

新能源突围,需要发力被忽视的中端品牌战场

作者 |张祥威 编辑 |德新 今年2月,受特斯拉等竞品降价影响,深蓝SL03销量下滑至4000台。深蓝的市场部上报长安中国,十天后开始降价,3月SL03销量重回正轨。 在巨头和新势力之间灵活腾挪,深蓝向外界展示了爆款制造的素质…

Vue动态样式

1.1动态class 用v-bind给标签class设置动态的值 语法: :class"{类名: 布尔值}" <template><div><!-- 语法::class"{类名: 布尔值}"使用场景: vue变量控制标签是否应该有类名--><p :class"{red_str: bool}">动态class…

RabbitMQNote (服务异步通信集群解决方案)

RabbitMQNote (服务异步通信集群解决方案) 1.消息可靠性(至少被消费一次)1.1.生产者消息确认(publisher confirm机制)1.1.1.修改配置1.1.2.定义Return回调1.1.3.定义ConfirmCallback1.2.消息持久化1.2.1.交换机持久化1.2.2.队列持久化1.2.3.消息持久化1.3.消费者消息确认…

华为OD机试真题 JavaScript 实现【租车骑绿道】【2023Q1 100分】

一、题目描述 部门组织绿岛骑行团建活动&#xff0c;租用公共双人自行车骑行&#xff0c;每辆自行车最多坐两人、最大载重 M。 给出部门每个人的体重&#xff0c;请问最多需要租用多少双人自行车。 二、输入描述 第一行两个数字 m、n&#xff0c;自行车限重 m&#xff0c;代…

Matplotlib学习

文章目录 Matplotlib曲线图的绘制饼图的绘制直方图的绘制散点图的绘制 Matplotlib 在深度学习的实验中&#xff0c;图形的绘制和数据的可视化非常重要。Matplotlib是用于绘制图形的库&#xff0c;使用Matplotlib可以轻松地绘制图形和实现数据的可视化。这里&#xff0c;我们来…

家用计算机硬件升级方案,旧电脑如何升级?旧电脑配置升级推荐方案

不少用户对陪伴已久的电脑有了感情&#xff0c;不想去购买新的电脑。而是想为旧电脑升级配置继续使用。旧电脑升级配置并不简单&#xff0c;需要考虑到硬件性能和兼容性。那么下面就让小编为大家带来旧电脑配置升级推荐方案。 1.旧电脑想要升级&#xff0c;大家姑且不用考虑升级…

电脑开机计算机配置,电脑开机显示正在配置更新请勿关闭计算机 重新启动之后,电脑里的数...

电脑开机显示正在配置更新请勿关闭计算机 重新启动之后,电脑里的数以下文字资料是由(历史新知网www.lishixinzhi.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 电脑开机显示正在配置更新请勿关闭计算机 重新启动之后,电脑里的数 安全模式下进入会显示配置…

计算机基本配置要求,Windows10系统对电脑的标准配置要求

Windows10预览版已经推出有一个多月了&#xff0c;Windows8系统已经停止了零售版&#xff0c;因此越来越多的用户选择的Windows10系统&#xff0c;但是有一个问题就出现了&#xff0c;Windows10系统对电脑的配置要求怎样&#xff1f;所需的标准配置是怎样的&#xff1f; Window…