前言:
承接第一章,继续做知识梳理。请跟随小编慢慢来
正文:
第二章从结构到类的演变
结构向类转变:引入类和对象
结构发生质的演变
1.函数与数据共存
在结构定义函数,这些函数成为成员函数。通过c++的结构对象使用成员函数:结构对象.成员函数
主程序中的变量是通过结构的成员函数使用数据成员,如果是公有性质,可直接使用数据成员。
2.封装性
如果在定义结构时,将数据成员使用private关键字定义,则产生封装性。
私有的数据成员,必须通过公有的成员函数才能使用。
c++面向对象程序设计的特点
面向对象的程序设计具有抽象、封装、继承、多态性等关键要素。
封装
封装是把对象的属性和操作结合成一个独立的系统单位,并尽可能隐蔽对象的内部细节。
封装要求一个对象应具备明确的功能,并具有接口以便和其他对象相互作用,同时对象的内部实现(代码和数据)是受保护的,外界不能访问他们。
在类中,封装是通过存取权限实现的。对象的外部只能访问对象的公有部分,不能直接访问对象的私有部分。
继承
一个类可以获得另一个类的特性的机制,继承支持层次概念。
多态性
不同的对象可以调用相同名称的函数,但可导致完全不同的行为的现象称为多态性。
使用类和对象
使用string对象
string类有3个成员函数对属性str进行操作:
成员函数find用来在str字符串中检索所需要的子串;
size成员函数计算并输出str存储的单词长度;
substr成员函数用来返回str字符串中的子串。
在程序中可以使用string类定义存储字符串的对象,这些对象隶属于string类,必须在程序中包含这个类的头文件,使用语句:
#include <string>,使用双引号括起来的单个字符常量初始化。
使用complex对象
c++标准程序提供complex类定义复数对象,在程序中要包含这个类的头文件:
#include <complex>
复数类需要两个初始值:实部和虚部,需要借助构造函数初始化语法来实现多值处理。
complex的real和image成员函数用来输出对象的实部和虚部的值。
结语: