- 1、本文档共92页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
C++中的类型转换 const_cast 用法:const_casttype_id(expression) 该运算符用来修改类型的const或volatile属性。 常量指针被转化成非常量指针,并且仍然指向原来的对象;常量引用被转换成非常量引用,并且仍然指向原来的对象;常量对象被转换成非常量对象。 * C++中的类型转换 dynamic_cast 用法:dynamic_casttype-id(expression) 该运算符把expression转换成type-id类型的对象。type-id必须是类的指针、类的引用或者void *;如果type-id是类指针类型,那么expression也必须是一个指针,如果type-id是一个引用,那么expression也必须是一个引用。 dynamic_cast主要用于类层次间的上行转换和下行转换,还可以用于类之间的交叉转换。在类层次间进行上行转换时,dynamic_cast和static_cast的效果是一样的;在进行下行转换时,dynamic_cast具有类型检查的功能,比 static_cast更安全。 * C++中的类型转换 dynamic_cast dynamic_cast是ANSI C++中仅有的两个与RTTI (Run Time Type Identification) 有关的用法之一。C++的类继承,使得有时很难弄清楚你正在使用的object属于哪个class,特别是当继承树比较深并且比较复杂的时候。 主流的C++编译器为了满足一些吝啬的C程序员的要求,一般都提供了把RTTI关掉的编译选项,这样确实可以减少一些空间开销。而如果你使用了这样的编译选项,而你的程序中又使用了dynamic_cast,就会引起的程序崩溃。 * C++中的类型转换 reinterpret_cast 用法:reinterpret_casttype-id(expression) reinterpret_cast是C++里的强制类型转换符。操作符修改了操作数类型,但仅仅是重新解释了给出的对象的比特模型而没有进行二进制转换。 reinterpret_cast只能在指针之间转换。 * 4.8.3对象作为函数参数和返回值的传递方式 对象参数的传递方式 通过运行栈来传递 主调函数调用拷贝构造函数,在运行栈的传参区域上创建对象 被调函数可以读取传参区域上的对象 有时对拷贝构造函数的调用可以省去 例: z.add(Complex(3, 4)) 直接调用构造函数Complex(float, float),在运行栈的传参区域上建立对象 * 4.8 深度探索 4.8.3对象作为函数参数和返回值的传递方式(续) 对象作为返回值传递方式 在主调函数中创建临时对象 主调函数把该对象地址(引用)传递给被调函数 被调函数返回时,在该地址上执行拷贝构造 * 4.8 深度探索 Point fun2() { Point a(1, 2); return a; } void fun2(_Point result) { _Point a; Point_Point(a, 1, 2); Point_Point(result, a); } b = fun2(); _Point temp; fun2(temp); b = temp; 4.8.3对象作为函数参数和返回值的传递方式 (续) 有时返回时可以不调用拷贝构造函数 例:return Point(1, 2); 直接调用构造函数Point(int, int),生成返回的对象 有时主调函数中可以不建立临时对象 例:Point p = fun2(); 先为p申请空间,调用fun2()前传递p的地址,这样在返回时可直接在p的空间上构造返回对象 * 4.8 深度探索 4.9 小结 主要内容 面向对象的基本概念、类和对象的声明、构造函数、析构函数、内联成员函数、拷贝构造函数、类的组合 达到的目标 * * * ***************2011/10/19 * * * * * 几种关系的图形标识 作用关系——关联 图中的“重数A”决定了类B的每个对象与类A的多少个对象发生作用,同样“重数B”决定了类A的每个对象与类B的多少个对象发生作用。 * 4.5 UML图形标识 —— 4.5.2 UML类图 类 A 重数A 类 B 重数B 几种关系的图形标识 包含关系——聚集和组合 共享聚集 组成聚集(简称组合) 聚集表示类之间的关系是整体与部分的关系,“包含”、“组成”、“分为……部分”等都是聚集关系。共享聚集:部分可以参加多个整体;组成聚集:整体拥有各个部分,整体与部分
您可能关注的文档
- C语言 第6篇 2、二维数组.ppt
- c语言 第7章数组及字符串.ppt
- C语言 第八节 位域.ppt
- c语言 应用程序编译及发布.doc
- C语言 指针及数组.ppt
- C语言C++第9节_预处理.ppt
- 汽车原理和保养.ppt
- 汽轮机动静部分摩擦特征和检修处理.doc
- C语言chap6(函数及宏定义).ppt
- C语言程序设计-提高篇-第5节 递归共同体.ppt
- [中央]2023年中国电子学会招聘应届生笔试历年参考题库附带答案详解.docx
- [吉安]2023年江西吉安市青原区总工会招聘协理员笔试历年参考题库附带答案详解.docx
- [中央]中华预防医学会科普信息部工作人员招聘笔试历年参考题库附带答案详解.docx
- [保定]河北保定市第二医院招聘工作人员49人笔试历年参考题库附带答案详解.docx
- [南通]江苏南通市崇川区人民法院招聘专职人民调解员10人笔试历年参考题库附带答案详解.docx
- [厦门]2023年福建厦门市机关事务管理局非在编工作人员招聘笔试历年参考题库附带答案详解.docx
- [三明]2023年福建三明市尤溪县招聘小学幼儿园新任教师79人笔试历年参考题库附带答案详解.docx
- [哈尔滨]2023年黑龙江哈尔滨市木兰县调配事业单位工作人员笔试历年参考题库附带答案详解.docx
- [上海]2023年上海市气象局所属事业单位招聘笔试历年参考题库附带答案详解.docx
- [台州]2023年浙江台州椒江区招聘中小学教师40人笔试历年参考题库附带答案详解.docx
最近下载
- 台山发电厂一期首2台600MW国产机组生产准备规划大纲实施细则.doc
- 王力《古代汉语》第二册 翻译.doc VIP
- 地基检测考试题库.doc
- 事业单位考试综合应用能力(医疗卫生类E类)重点难点试题集精析(2025年).docx VIP
- 2024-2030年中国交通工程质量检测行业需求潜力分析及发展趋势研究报告.docx
- 危害国家安全的案例青少年.pptx VIP
- 2024年宜昌伍家新城投资控股集团有限公司人员招聘考试题库及答案解析.docx
- 基于非遗保护视角的传统技艺融入高校艺术教育教学体系的路径.docx VIP
- 鼾症的健康宣教.pptx VIP
- 中华优秀传统文化概要:异彩纷呈的传统书画PPT教学课件.pptx
文档评论(0)