侯捷 C++ 课程学习笔记:C++ 基础与演化
一、课程基础要求
在侯捷老师C++ 课程中,首先强调了学习 C++ 前应具备的基础知识。这些基础知识对于理解 C++ 的核心概念和编程技巧至关重要。
-
掌握某种过程式语言(C 语言最佳):
-
变量(Variables):理解变量的声明、初始化和使用。
-
类型(Types):熟悉基本数据类型,如
int
、float
、char
,以及结构体struct
等。 -
作用域(Scope):理解变量和函数的作用域,包括全局作用域和局部作用域。
-
循环(Loops):掌握
while
和for
循环的使用。 -
流程控制(Flow Control):理解
if-else
和switch-case
等流程控制语句。
-
-
了解程序的编译和链接过程:
-
知道一个程序需要经过编译和链接才能被执行。
-
掌握如何编译和链接代码,建立一个可运行的程序。
-
二、课程目标
侯捷老师C++ 课程的目标是培养学员良好的编程习惯和面向对象的编程思维。
-
培养正规的、大气的编程习惯:
-
以良好的方式编写 C++ 类,包括:
-
不包含指针成员的类:如
Complex
类。 -
包含指针成员的类:如
String
类。
-
-
-
学习类之间的关系:
-
继承(Inheritance):理解类的继承机制,如何通过继承复用代码。
-
复合(Composition):理解类的复合关系,即一个类包含另一个类的实例。
-
委托(Delegation):理解类的委托关系,即一个类将某些功能委托给另一个类。
-
三、课程内容
-
C++ 的历史:
-
B 语言(1969):C 语言的前身。
-
C 语言(1972):过程式编程语言,广泛用于系统编程。
-
C++ 语言(1983):最初称为 "new C",后改为 "C with Class",最终定名为 C++。
-
Java 语言:面向对象的编程语言,广泛用于企业级应用。
-
C# 语言:微软开发的面向对象编程语言,用于 .NET 平台。
-
-
C++ 的演化:
-
C++ 98 (1.0):第一个正式的 C++ 标准。
-
C++ 03 (TR1, Technical Report 1):对 C++ 98 的技术报告,包含一些新特性。
-
C++ 11 (2.0):引入了大量新特性,如自动类型推导、初始化列表、移动语义等。
-
C++ 14:对 C++ 11 的小幅改进和补充。
-
-
C++ 的组成部分:
-
C++ 语言:包括语法、关键字、标准库等。
-
C++ 标准库:提供了一系列常用的类和函数,如容器、算法、输入输出流等。
-
四、学习心得
通过学习侯捷老师的C++ 课程,我对 C++ 的基础知识和演化历程有了更深入的理解。课程内容从基础到高级,逐步引导学员掌握 C++ 的核心概念和编程技巧。特别是对类的编写和类之间的关系的理解,为后续的面向对象编程打下了坚实的基础。
在实际编程中,掌握 C++ 的基础知识和标准库的使用,可以显著提高代码的可读性和可维护性。同时,了解 C++ 的历史和演化,有助于更好地理解语言的设计理念和未来发展方向。
五、总结
老师通过详细的讲解:从基础的变量和类型,到高级的类和对象,再到 C++ 的历史和演化,课程内容丰富而系统。通过学习,我不仅提升了编程相关知识,还明确了要有良好的编程习惯和面向对象的编程思维。