分享

深度探索C 对象模型 PDF 清晰版下载

 觅书时代 2023-01-29 发布于河北
创作者Lippman参加设计方案了全球第一套C++编译程序cfront,这本书便是一位杰出的C++编译程序设计师向你论述他如何处理各种各样explicit(确立出現于C++程序代码中)和implicit(掩藏于程序代码身后)的C++语意。 《 深度探索C++对象模型 》致力于C++面向对象编程编程设计的底层体制,包含化学结构式语意、暂时性目标的转化成、封裝、承继,及其虚拟虚拟涵数和虚拟承继。这本书让你了解:一旦你可以掌握底层完成实体模型,你的程序代码将得到多么的大的高效率。Lippman回应了这些有关C++附加负载与复杂性的各种各样错误报告和知识点,但也指出在其中一些成本费和权益互换的确存有。他论述了各种各样的完成实体模型,指出他们的超进化之道以及实质要素。书里包含了C++领域模型的语意暗示着,并指出这一实体模型是怎样危害你的程序流程的。 针对C++底层体制很感兴趣的阅读者,这必定是一本给你大呼舒服的绝佳好书推荐。 目录 本立道生(侯捷 译序) III 目录 VII 前言(Stanley B. Lippman) XIII 第0章 导读(译者的话) XXV 第1章 关于对象(Object Lessons) 1 加上封装后的布局成本(Layout Costs for Adding Encapsulation) 5 1.1 C++对象模式(The C++ Object Model) 6 简单对象模型(A Simple Object Model) 7 表格驱动对象模型(A Table-driven Object Model) 8 C++对象模型(The C++ Object Model) 9 对象模型如何影响程序(How the Object Model Effects Programs) 13 1.2 关键词所带来的差异(A Keyword Distinction) 15 关键词的困扰 16 策略性正确的struct(The Politically Correct Struct) 19 1.3 对象的差异(An Object Distinction) 22 指针的类型(The Type of a Pointer) 28 加上多态之后(Adding Polymorphism) 29 第2章 构造函数语意学(The Semantics of Constructors) 37 2.1 Default Constructor的构造操作 39 带有Default Constructor的Member Class Object 41 带有Default Constructor的Base Class 44 带有一个Virtual Function的Class 44 带有一个Virtual Base Class的Class 46 总结 47 2.2 Copy Constructor的构造操作 48 Default Memberwise Initialization 49 Bitwise Copy Semantics(位逐次拷贝) 51 不要Bitwise Copy Semantics! 53 重新设定Virtual Table的指针 54 处理Virtual Base Class Subobject 57 2.3 程序转化语意学(Program Transformation Semantics) 60 显式的初始化操作(Explicit Initialization) 61 参数的初始化(Argument Initialization) 62 返回值的初始化(Return Value Initialization) 63 在使用者层面做优化(Optimization at the User Level) 65 在编译器层面做优化(Optimization at the Compiler Level) 66 Copy Constructor:要还是不要? 72 摘要 74 2.4 成员们的初始化队伍(Member Initialization List) 74 第3章 Data语意学(The Semantics of Data) 83 3.1 Data Member的绑定(The Binding of a Data Member) 88 3.2 Data Member的布局(Data Member Layout) 92 3.3 Data Member的存取 94 Static Data Members 95 Nonstatic Data Members 97 3.4 继承与Data Member 99 只要继承不要多态(Inheritance without Polymorphism) 100 加上多态(Adding Polymorphism) 107 多重继承(Multiple Inheritance) 112 虚拟继承(Virtual Inheritance) 116 3.5 对象成员的效率(Object Member Efficiency) 124 3.6 指向Data Members的指针(Pointer to Data Members) 129 指向Members的指针的效率问题 134 第4章 Function语意学(The Semantics of Function) 139 4.1 Member的各种调用方式 140 Nonstatic Member Functions(非静态成员函数) 141 Virtual Member Functions(虚拟成员函数) 147 Static Member Functions(静态成员函数) 148 4.2 Virtual Member Functions(虚拟成员函数) 152 多重继承下的Virtual Functions 159 虚拟继承下的Virtual Functions 168 4.3 函数的效能 170 4.4 指向Member Function的指针(Pointer-to-Member Functions) 174 支持指向Virtual Member Functions的指针 176 在多重继承之下,指向Member Functions的指针 178 指向Member Functions之指针的效率 180 4.5 Inline Functions 182 形式参数(Formal Arguments) 185 局部变量(Local Variables) 186 第5章 构造、析构、拷贝语意学(Semantics of Construction, Destruction, and Copy) 191 纯虚函数的存在(Presence of a Pure Virtual Function) 193 虚拟规格的存在(Presence of a Virtual Specification) 194 虚拟规格中const的存在 195 重新考虑class的声明 195 5.1 无继承情况下的对象构造 196 抽象数据类型(Abstract Data Type) 198 为继承做准备 202 5.2 继承体系下的对象构造 206 虚拟继承(Virtual Inheritance) 210 vptr初始化语意学(The Semantics of the vptr Initialization) 213 5.3 对象复制语意学(Object Copy Semantics) 219 5.4 对象的效能(Object Efficiency) 225 5.5 析构语

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多