目录
类和对象以及this指针:
概念
构造函数
拷贝构造函数和赋值运算符重载函数(深拷贝)
memcpy
实现string
构造的初始化列表
常方法:
指向类成员的指针
类和对象以及this指针:
概念
面向对象四大特性:
抽象:抽象是一种将对象的共同特征提取出来并定义成一个通用模板的过程。类的抽象是指将一个类的共同属性和行为抽象出来,定义一个通用的类模板,而不关注具体的实现细节。
封装性:数据和代码捆绑在一起,避免外界干扰和不确定性访问。封装可以使得代码模块化。
优点:
确保用户代码不会无意间破坏封装对象的状态;
被封装的类的具体实现细节可以随时改变,而无须调整用户级别的代码。
继承性:让某种类型对象获得另一个类型对象的属性和方法,继承可以扩展已存在的代码
多态性:同一事物表现出不同事物的能力,即向不同对象发送同一消息,不同的对象在接收时会产生不同的行为(重载实现编译时多态,虚函数实现运行时多态),多态的目的则是为了接口重用。
计算类、结构体对象内存大小:只和成员变量有关,与成员函数无关。struct
和class
之间的主要区别在于其默认的访问控制权限
多态
多态性可以简单地概括为“一个接口,多种方法”,程序在运行时才决定调用的函数,它是面向对象编程领域的核心概念。