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

C++ 的类型转换详解

一、C 类型转换1.静态类型转换1.语法格式1static_cast目标类型 (标识符)2.转化规则在一个方向上可以作隐式转换在另外一个方向上就可以作静态转换。1234inta 10;intb 3;coutstatic_castfloat(a)/bendl;//float int int floatreturn0;12int*p;void*q;p static_castint*(q);1char*p static_castchar*(malloc(100));2.重解释类型转换1.语法格式1reinterpret_cast目标类型 (标识符)2.转化规则将数据以二进制存在形式的重新解释在双方向上都不可以隐式类型转换的则需要重解释类型转换1234567891011121314#include iostream#include string.husingnamespacestd;intmain(){intx 0x12345648;char*p reinterpret_castchar*(x);//char*p static_castchar*(x); errorprintf(%x\n,*p);inta[5] {1,2,3,4,5};int*q reinterpret_castint*(a1);printf(%x\n,*q);return0;}3.常类型转换1.语法格式1const_cast目标类型 (标识符)//目标类类型只能是指针或引用。2.语法规则用来移除对象的常量性使用 const_cast 去除 const 限定的目的不是为了修改它的内容使用 const_cast 去除 const 限定通常是为了函数能够接受这个实际参数。123456789101112#include iostreamusingnamespacestd;voidfunc(int ref)//别人己经写好的程序或类库{coutrefendl;}intmain(void){constintm 1;func(const_castint(m));return0;}脱掉const后的引用或指针可以改吗1234567891011121314151617181920212223242526#include iostreamusingnamespacestd;intmain(){constintx 200;int a const_castint(x);// int a x;a 300;coutaxendl;couta---xendl;int*p const_castint*(x);// int *p x;*p 400;couta*pendl;coutp---xendl;structA{intdata;};constA xx {1111};A a1 const_cast A(xx);a1.data 222;couta1.dataxx.dataendl;A *p1 const_castA*(xx);p1-data 333;coutp1-dataxx.dataendl;return0;}结论:可以改变 const 自定义类的成员变量但是对于内置数据类型却表现未定义行为3.const 常变量补充C中 const 定义的变量称为常变量。变量的形式常量的作用用作常量常用于取代#define 宏常量4.动态类型转换1.语法格式1dynamic_cast目标类型 (标识符)用于多态中的父子类之间的强制转化
http://www.zskr.cn/news/1319034.html

相关文章:

  • 如何在Blender中实现3MF格式的完美导入导出?终极指南
  • Linux音频驱动开发实战:为TLV320ADC5120编写ALSA Codec驱动
  • 2025最权威的十大AI科研工具推荐
  • 告别重复劳动:用Shell脚本+gnome-terminal打造你的专属Linux工作台(附完整脚本)
  • 深圳宠物医院推荐|2026南山靠谱榜单|咕噜咕噜:专业设备+透明收费+24小时急诊
  • QQ音乐解析工具终极指南:如何轻松获取全网音乐资源
  • 别再手动改hosts了!用Docker Compose一键部署Authelia SSO,顺便搞定Traefik反向代理
  • python系列【仅供参考】:mongo4.0.0 加用户认证 motor和pymongo的auth连接
  • RISC-V开发板结合Python实现B站消息监测:硬件极客的IoT实践
  • 告别黑盒渲染!用Nvdiffrast手把手教你从零搭建可微渲染管线(PyTorch版)
  • 社会学论文降AI工具免费推荐:2026年社会学毕业论文AIGC超标4.8元一次过知网完整指南 - 还在做实验的师兄
  • 零售自助收银系统架构全解析:从硬件选型到防损运营
  • 怕AI论文被导师秒识破?2026年亲测有效的4个‘降AIGC率’方法,附免费工具入口! - 降AI实验室
  • 如何在3分钟内免费安装Chrome视频下载插件:新手完整指南
  • 深圳超出圈的纹眉老店,久匠凭什么征服同城女生?十年技术实力过硬 - 企业博客发布
  • 专业的成都儿童摄影底片全送服务好
  • 从DVWA靶场看Web安全:一个漏洞的四种防御等级,你的代码在第几层?
  • Perplexity本地化部署终极方案:支持中文长文本解析、自定义工具调用与企业微信集成(仅限内网环境)
  • 0基础装完龙虾不知道干嘛?用15分钟帮你激活造物主身份
  • 【紧急预警】Perplexity症状查询功能存在3类合规风险!NMPA最新AI辅助诊断备案要求下,基层医院必须在72小时内完成的5项配置校准
  • 嵌入式工程师进阶指南:从体系结构到系统设计的成长路径与核心书单
  • Hitboxer终极指南:免费专业解决游戏按键冲突的SOCD重映射工具
  • D2DX完整指南:5个简单步骤让《暗黑破坏神2》在现代PC上完美运行
  • FPGA新手避坑指南:手把手教你配置Xilinx 7系列GTX的10G光通信IP核(Vivado 2022.1)
  • 终极窗口隐身术:3分钟学会用Boss-Key打造你的数字安全区
  • Python开发者如何快速接入Taotoken调用多模型API服务
  • 2026年5月市政污水SS浓度计公司排名:工程选型实测榜 - 仪表品牌排行榜
  • 华为2288H V5服务器U盘装CentOS 7.5,手把手解决‘dracut timeout’报错
  • 1345. 跳跃游戏 IV
  • Backtrader 终极指南:Python量化交易回测框架完全解析