1. C++初识
一、Hello World
#include<iostream> // 标准输入输出流 using namespace std; // 使用命名空间 std, 相当于打开一个std的空间 // 函数的入口地址 int main() { // cout 标准输出 // <<左移运算符, 符号重载。 // endl 结束换行。 Windows中C换行 '\n', Linux换行 '\r\n' cout << "Hello World" << endl; return EXIT_SUCCESS; // 返回正常退出, 这个值就是 0 }
二、面向过程
面向过程是一种以过程为中心的编程思想
通过分析出解决问题所需要的步骤,然后用函数吧这些步骤一步一步实现,使用的时候回一个一个依次调用就可以了。面向过程编程思想的核心: 功能分解,自顶向下逐层细化。
程序 = 数据结构 + 算法
面向过程编程语言存在的主要缺点是不符合人的思维习惯,而是使用计算机的思维方式去处理问题,而且面向过程编程语言重要性低,维护困难。
面向对象编程(OOP)技术,是开发计算机应用程序的一种新的方法,新思想。过去的面向过程编程常常会导致所有的代码都包含在几个模块中,使程序难以阅读和维护。在做一些修改的时候常常牵一发动全身,使以后的开发和维护难以为继。而使用OOP技术,常常要使用许多代码模块,每个模块只需要提供特定的功能,它们是彼此独立的,这样就可以增大了代码重用的几率,更加有利于软件的开发、维护和使用。
在面向对象中, 算法与数据结构被看做一个整体, 称作 对象。现实世界中任何类的对象都具有一定的属性和操作,也总能用数据结构和算法两者结合的来描述,所以可以用下面的灯饰来定义对象和程序。
对象 = 算法 + 数据结构
程序 = 对象 + 对象 + ......
从上面的灯饰可以看出,程序就是许多对象在计算机中相继表现自己,而对象则是一个程序实体。
面向对象编程思想的核心: 应对变化,提高复用
把客观事物封装成抽象的类, 并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的运行进行隐藏
类将成员变量和成员函数封装在类的内部,根据需要设置访问权限,通过成员函数管理内部状态
4.2 继承
继承所表达的是类之间的相关关系。这种关系使用对象可以集成另外一类对象的特征和能力
继承的作用: 避免公用代码的重复开发,减少代码合数据冗余
4.3 多态
多态性可以简单地概括为 "一个接口, 多个方法"。字面意思就是多种形态,程序在运行时候才决定调用的函数,它是面向对象编程领域的核心概念。