编程的法则:C++程序员必备的101条实用经验与最佳实践
编程的法则:C++程序员必备的101条实用经验与最佳实践
前言 C++是当今主流程序设计语言的一种,由美国AT&T贝尔实验室的BjarneStroustrup 博士于20 世纪80 年代发明和实现的,目的是解决c 语言开发过程中遇到的棘手问题。C++语言起初被称之为“C wit...
当前版本
软件大小
软件语言
是否破解
C++是当今主流程序设计语言的一种,由美国AT&T贝尔实验室的BjarneStroustrup 博士于20 世纪80 年代发明和实现的,目的是解决c 语言开发过程中遇到的棘手问题。C++语言起初被称之为“C withClasses”、“a better C”,作为C 语言的增强版而出现,直到1998年才正式更名为C++。
C++是一种颇受争议的语言。这主要体现在其复杂性和流行性两个方面。Linux之父就称其为“糟糕程序的垃圾语言”,但其优良的兼容性却使其颇受欢迎。首先C++是一种复杂、难以掌握的语言,C++的复杂难以掌握不仅表现在其复杂的语法,更体现在其提供的4种编程思维模型上面,包括:procedural-based,object-based,object-oriented,generic paradigm。这些是 C++的设计目的决定的。C++语义的目标是:既要有效率,又要有弹性;既要面向对象,又要兼容面向过程。学习起来自然不可能很简单。
再者 C++是一门流行的语言。在 Tiobe 编程语言热度排行榜中 C++稳居前三。这主要原因是C++具有面向对象的逻辑表达优势,还具有C语义在时间和空间上的效率。这是每个程序员都向往的。
难学易用,可以说是 C++语言最大的特点。同样也是其独具魅力的地方。C++复杂的特性导致 C++语言比较难以驾驭。烦琐的面向对象特性,使得初学者很容易陷入误区,而一知半解的掌握又使得C++设计工程布满更多的陷阱。为了使您更好地了解C++语言特性,也为了更好地避免种种潜在的风险而不得不对其有更深入的认识,这也是本文写作的初衷。
在C++语言发展的最初阶段,人们想知道C++是个什么东西。现在 C++语言已发展成熟,如何正确高效地使用它,已经成为我们亟待解决的问题。对于那些刚加入C++开发行列的程序员来说。别人的前车之鉴,或许能对自己有很大的帮,可以帮助自己快速、准确地掌握C++语言的特征。
全书分为四篇,共13章,由浅入深地讲解C+语言的使用注意事项和优秀实践。每篇内容可总结如下:第一篇讲述C++基本的语言特征,第二篇讲述类和数据抽象,第三篇讲述C++面向对象的机制,第四篇讲述C++的一些高级特征。
第一篇:包括1~8 章,内容涵盖 C++基本语言特征。涉及概念包括C++的关键字、数组、指针、表达式、函数、字符串、预处理指令等最基本的语言特征。
第1章:以C语言为参照,对C++的语言特性进行了一些提纲挈领的介绍。重点介绍 C++和 C语言的区别和联系,面向对象的概念等。
第2章:类型是所有程序的基础,类型告诉数据代表什么意思以及针对此数据可执行的操作。C++定义的基本类型有:字符型、整型、浮点型等,除此之外还可自定义类型。本章介绍C++中全局变量和局部变量各自的应用特点,列举了结构体和联合体的适用场景,并对类型转换进行了一些深度探讨。
第3 章:介绍关键字的用法介绍和注意事项,包括const,volatile,mutable,static,sizeof,new 和 delete,以及关键字使用中的陷阱。
第4章:数组和指针是C++最为重要的两个概念,数组保存某种类型的一组对象,数组一旦创建,就不允许添加新元素了,而指针可以遍历数组中的元素。本章所有的论题均涉及两者常见的一些应用陷阱。
第5 章:本章的主题是表达式和语句。C++提供了丰富的运算符,并定义针对内置类型操作符含义,除此之外还支持操作符重载。此章节的议题分类讨论一些容易陷入误区的表达式和语句。
第 6 章:本章的主题是函数,函数是 C++语言重要的组成部分,其和 C++中的类型、数组等概念具有同等的地位,对函数的讨论,包括参数传递、重载、覆盖事项、以及内联函数等。
第7章:介绍字符和字符串的使用注意事项。每个可执行程序都会涉及字符和字符串。因为程序要接受用户输入,产生对应输出(显示)。用户输入的数据计算机如何解释,以及计算后的输出显示。这些都涉及字符的编码。
第8 章:预处理是C++程序编译的第一个步骤,预处理在源代码编译之前进行一些文本性质的操作。具体包括注释删除,插入被#include包含的文件内容、定义和替换有#define 指令定义的符号,以及确定代码部分内容是否应根据一些条件编译指令进行编译。本章议题主要涉及预处理指令,包括 define,assert 和##等。本章的议题将向你展示C++编译器预处理所进行的不为人知的事情,以及其存在的陷阱。
第二篇:包括9、10两章。内容涵盖C++的类和数据抽象封装。这些是C++区分面向过程语言最根本的特征之一。
第 9 章:本章议题涉及类的设计和实现,包括类的构造、析构、数据(成员函数)访问权限、类的继承等,这些都是类的类型基础。本章的议题将向你展示类的类型设计和实现的陷阱和注意事项。
第 10 章:本章主要讨论操作符的重载,操作符重载过程的一些注意事项。本章将详细为你讲述重载操作符的一些内容。运用本章提供的信息,我想你会从以前的困扰中走出,像专家一样将“操作符重载”玩弄于股掌之间。
第三篇:包括11、12 两章。内容涵盖 C++面向对象编程机制。它们是 C++语言面向对象的灵魂所在。
第11 章:本章议题围绕继承和多态展开。将为你阐述继承和多态的实现机制,以及两者的关系。通过本章议题的阅读,可帮助你对继承和多态有更为深刻的认识。
第12章:本章讨论的议题为模板和范型。通过本章的阅读可帮你加深对“面向对象所依赖的多态是运行时的多态,而泛型模板所依赖的多态是编译时的多态或参数式多态”的认识。
第四篇:包括13 章,主要讨论 C++编程中一些高级特征。在某些适当的场景下
是有用的,但并不是所有的场景下都必须。没有掌握它们,虽然你可以写出运行良好的程序,但是,如果你掌握并使用了它们,你所编写的代码会在扩展性、可维护性方面,更加具有优势。
第13 章:本章讨论的议题主要围绕 C++的部分高级特性。涉及虚函数、命名空间、运行效率、代码可读性等诸多方面。掌握它们是你迈向C++高级程序员的必经之路。
本书适合有一定的C/C++语言基础,并想深入了解C++面向对象程序设计方法的初学者;有兴趣了解C++,并应用于实际工作中的C++程序开发人员。
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。
常见问题
-
如何安装和激活?
-
程序是否已损坏?文件损坏?还是其他错误?
-
如何更新?正式激活后会发生什么情况?
-
如何下载?链接不起作用?
-
已发布更新。我什么时候升级我的版本?
-
如何更改语言?
-
如何删除软件?
-
需要远程帮助吗?
最新发布
2024-02-10
2024-10-29
2024-10-28
暂无讨论,说说你的看法吧