1、面向对象编程的特征截止到目前本人已接触了很多编程语言。例如java、C、C、python、php汇编等。其中C和汇编是面向过程编程C、python、php等都是面向对象编程在面向对象编程中C是效率最高的没有之一。提到面向对象编程就一定要知道面向对象编程的三大特征封装、继承、多态2、类与对象的关系面向对象编程就要有对象对象从哪来呢对象由类来创建类需要我们创建。类有两部分组成属性-------名词性特征通过成员变量实现行为-------动词性功能通过成员方法来实现举个例子比如人类是一个类类中有姓名、性别、年龄、籍贯等属性人类会上班、会吃饭、会走路、会睡觉这些动词性功能就是类的行为。类与对象的关系一个对象必须要有其相对应的类才能创建一个类如果不用来创建对象它是没有意义的(后期讲的抽象类除外)类的创建使用关键字class代码如下#include iostream using namespace std; //1、类是用来实例化对象的 //2、类有成员属性和成员方法组成 //例如定义Person类 有姓名、年龄两个属性 有会上班 会唱歌 两个方法 class Person { public: //属性 string uname;//姓名 int age;//年龄 //方法 void work(void) { cout 我会上班 endl; } void sing(void) { cout 我会唱歌 endl; } }; int main() { return 0; }3、类的实例化有类创建对象的过程叫类的实例化。类实例化出的对象有两种栈内存对象 和 对内存对象 两者的区别如下定义对象的语法不同栈内存对象 类名 对象名 堆内存对象 类名* 对象名new 类名内存分区不同栈内存对象存储在栈区内存由计算机自动分配自动释放。堆内存对象存储在堆区由程序员使用new 手动申请使用delete手动释放如果不释放会造成内存泄漏对成员变量的使用语法不同栈内存对象,使用点(.)语法对内存对象使用箭头(-)语法代码如下#include iostream using namespace std; //1、类是用来实例化对象的 //2、类有成员属性和成员方法组成 //例如定义Person类 有姓名、年龄两个属性 有会上班 会唱歌 两个方法 class Person { public: //属性 string uname;//姓名 int age;//年龄 //方法 void work(void) { cout 我会上班 endl; } void sing(void) { cout 我会唱歌 endl; } }; int main() { //实例化对象 //1.栈内存对象 Person zs; zs.uname zs; zs.age18; //访问对象的属性 cout 姓名 zs.uname 年龄 zs.age endl; //调用对象的方法 zs.sing(); zs.work(); //2、堆内存对象 Person * lsnew Person; ls-unamelisi; ls-age 19; //访问对象的属性 cout 姓名: ls-uname 年龄 ls-age endl; //调用对象的方法 ls-sing(); ls-work(); return 0; }