本教程面向具备 C 语言完整基础的学习者,无 C 语言基础可以先学习我们的 C 语言快速入门。
本教程主打快速过渡、高效转型,不重复讲解C语言基础内容,专注讲解 C 语言与 C++ 的核心区别、C++ 独有语法特性与面向对象编程核心知识。
本教程面向具备 C 语言完整基础的学习者,无 C 语言基础可以先学习我们的 C 语言快速入门。
本教程主打快速过渡、高效转型,不重复讲解C语言基础内容,专注讲解 C 语言与 C++ 的核心区别、C++ 独有语法特性与面向对象编程核心知识。
C++ 读作 C 加加,是 C Plus Plus 的简称。顾名思义,C++ 是在 C 语言的基础上增加新特性,玩出了新花样,所以叫 C Plus Plus,就像 iPhone 和 iPhone PRO MAX 的关系。
C++ 最初被设计为 “C with Classes”,完全兼容 C 语言。也就是说,C 语言中的代码是完全可以复制到 C++ 中运行的。
引用(Reference)是 C++ 相对于 C 语言的又一个扩充,它可以看做是数据的一个别名。引用类似于人的外号(笔名),我们通过别名和原来的名字都能够找到这个人,鲁迅和周树人虽然是两个名字,但是说的是同一个人。
这节课,我们来学习 C++ 中函数对 C 语言函数的两个扩展:默认参数与重载。
面向对象编程是在面向过程编程的基础上发展来的,它比面向过程编程具有更强的灵活性和扩展性。类(Class)和对象(Object)是面向对象编程的两个核心概念。`面向对象编程` 是程序员发展的分水岭,很多初学者会因无法理解面向对象而放弃学习编程。
类的构造函数是类的一种特殊的成员函数,它会在每次创建类的新对象时执行。
对象的内存中包含了成员变量,不同的对象占用不同的内存,这使得不同对象的成员变量相互独立,他们的值不受其他对象的影响。那么有没有哪些属性或者方法是归所有对象拥有的?它就是静态成员。
在 C++ 中,this 是一个指向当前对象的指针,也就是对象指针。对象指针就是指向对象的指针。这个对象存储空间的首地址就是对象指针的值
C++ 中的面向对象三大特性是:封装(Encapsulation)、继承(Inheritance)、多态(Polymorphism)。这三者构成了面向对象编程(OOP)的核心理念。
多态(polymorphism)指的是不同类的对象对同样的消息可以做出完全不同的响应,即同一个消息可能会导致调用不同的方法。消息在 C++ 中指的就是函数的调用,不同的函数可以具有多种不同的功能,而多态就是允许用一个函数名的调用来实现不同的功能。
在 C++ 中,模板是实现代码重用机制的一种工具,它可以实现类型参数化,即把类型定义为参数,从而实现了真正的代码重用。模板主要有两种类型:函数模板和类模板。