【C++】第零章 前言

前言

一、本博文的写作背景

        学校的C++教学质量令人堪忧,C++是为了编写大型程序而设计的,但是学校的教学仅仅局限于C++的基本应用,甚至对于C++的核心库STL都不作任何讲解,对于致力于成为硬软双修的电子专业学生来说,这样的教学很难说是成功的。所以出于对自己负责的态度,作者认为需要更深入的学习,本专题下的博文皆为学习笔记,主要是给自己看,如有错误,敬请指出。

二、本博文的参考资料

        主要是总结,简洁化郭炜老师的《新标准C++程序设计》这本书。

三、内容编排

        第一篇   面向对象的程序设计:包含类和对象、运算符重载、继承、多态等内容,是C++语言的学习重点。(本章节也就是学校主讲的内容,学校的教学就仅此而已)

        第二章   泛型程序设计:包括如何编写模板以及如何使用标准模板库STL。即便不想用面向对象的方法编程,学习STL也是大有裨益的。

        第三章   C++高级主题:涉及异常处理、C++风格的强制类型转换等C++语言中比较深入的内容,以及C++11标准引入的几个新特性。


目录

第一篇   面向对象的程序设计

第1章   从C到C++

        1.1   基本格式

        1.2   输入输出

        1.3   头文件

        1.4   强制类型转换运算符的新形式

        1.5   函数参数的默认值

        1.6   引用和函数参数的传递

        1.7   内联函数

        1.8   函数的重载

        1.9   指针和动态内存分配

        1.10   用string对象处理字符串

第2章   类和对象初步

        2.1   类的定义和使用

        2.2   类的示例程序剖析

        2.3   访问对象的成员

        2.4   类成员的可访问范围

第3章   类和对象进阶

        3.1   构造函数

        3.2   析构函数

        3.3   构造函数、析构函数和变量的生存期

        3.4   静态成员变量和静态成员函数

        3.5   常量对象和常量成员函数

        3.6   成员对象和封闭类

        3.7   const成员和引用成员

        3.8   友元

        3.9   this指针

        3.10   在多个文件中使用类

第4章   运算符重载

        4.1   运算符重载的概念和原理

        4.2   重载赋值运算符“=”

        4.3   浅拷贝和深拷贝

        4.4   运算符重载为友元函数

        4.5   实例:长度可变的整型数组类

        4.6   重载流插入运算符和流提取运算符

        4.7   重载类型强制转换运算符

        4.8   重载自增、自减运算符

        4.9   运算符重载的注意事项

第5张   继承与派生

        5.1   继承和派生的概念

        5.2   正确处理类发符合关系和继承关系

        5.3   protected 访问范围说明符

        5.4   派生类的构造函数和析构函数

        5.5   多层次的派生

        5.6   包含成员对象的派生类

        5.7   公有派生的赋值兼容规则

        5.8   基类与派生类指针的互相转换

        5.9   私有派生和保护派生

        5.10   派生类和赋值运算符

        5.11   多重继承

第6章   多态与虚函数

        6.1   多态的基本概念

        6.2   多态的作用

        6.3   多态的实现原理

        6.4   关于多态的注意事项

        6.5   虚析构函数

        6.6   纯虚函数和抽象类

第7章   输入输出流

        7.1   流类

        7.2   标准流对象

        7.3   使用流操纵算子控制输出格式

        7.4   调用 cout 的成员函数

        7.5   cin 的高级用法

第8章   文件操作

        8.1   文件的概念

        8.2   C++ 文件流类

        8.3   文件的打开和关闭

        8.4   文件的读写

        8.5   文本方式打开文件与二进制方式打开文件的区别

第二章   泛型程序设计

第9章   泛型程序设计与模板

        9.1   函数模板

        9.2   类模板

        9.3   类模板中的非类型参数

        9.4   类模板与继承

        9.5   类模板和友元

        9.6   类模板中的静态成员

        9.7   在多个文件中使用模板

第10章   标准模板库 STL

        10.1   STL 中的基本概念

        10.2   顺序容器

        10.3   函数对象

        10.3.1   函数对象的概念

        10.4   关联容器

        10.5   容器适配器

        10.6   STL 算法分类

        10.7   不变序列算法

        10.8   变值算法

        10.9   删除算法

        10.10   变序算法

        10.11   排序算法

        10.12   有序区间算法

        10.13   string 类详解

        10.14   bitset 对象

第三章   C++高级主题

第11章   C++高级主题

        11.1   强制类型转换

        11.2   运行时类型检查

        11.3   智能指针 auto_ptr

        11.4   C++异常处理

        11.5   名字空间

        11.6   C++11 新特性概要
 

附录:魔兽世界大作业


后记

        关于 C++ 的学习,仍是道阻且长。在暑假花大量时间重新温习并再一次系统学习后,C++ 于我而言仍是庞然大物,不得窥其全貌,还需要大段大段的时间来消化并理解。

        写完整个专栏,感觉对大部分知识点的掌握仅仅是纸上谈兵,能够按照公式化的方法解决书中给出的问题,却难以对一个实际问题去抽象化、去解决。

        魔兽世界大作业是一个及其综合性的大作业,非常考人理解,凭借博主目前的水平,解决备战和装备部分就已经及其吃力,更别提最后的开战和最终版了。只能说再往后的日子里慢慢精进自己的能力吧,可能哪天就又有新感悟了。

        最后附上一些大佬完成大作业的代码,其代码本身和感悟都值得我去继续学习。

C++面向对象程序设计大作业:魔兽世界(三):开战_c++红蓝军对抗_REDRUM荒村听雨的博客-CSDN博客

045:魔兽世界三(开战) 程序设计实习MOOC / 程序设计与算法(三)测验题汇总(2020春季) 已经结束_HUGO的博客-CSDN博客

【C++学习】魔兽世界大作业_Tech沉思录的博客-CSDN博客

005:魔兽世界之一:备战_苦瓜酿的博客-CSDN博客

 021:魔兽世界之二:装备_Simon_Paul的博客-CSDN博客

 郭炜老师魔兽三备战思路及代码_郭炜061:set_glancelike的博客-CSDN博客

你可能感兴趣的:(C++,c++)