C++中的OOP

面向对象程序设计(Object-Oriented Programming, 简称OOP)是20世纪80年代发展起来的一种程序设计方法。它通过模拟现实世界中的事物和关系,利用抽象、分类、归纳等方法来构造软件系统。
在20世纪80年代末,随着所要开发程序规模的增大,结构化程序设计的一些缺点越来越突出,主要是:

  • 数据和算法的一致性差。在结构化程序设计中,数据与处理数据的算法是相互分离的。如果根据需要而修改某一项数据时,处理此数据的所有算法都要作相应的修改。
  • 程序的可重用性差。

而在OOP中,事物的属性对应于数据,事物的操作对应事物的算法,因此将数据和处理数据的算法捆绑成一个整体就定义了一种事物的类型。

OOP中的三个主要特征:

  • 封装性。C++中使用“类”来表示。
  • 继承性。指一种事物保留了另一种事物的全部特征,并且具有自身的独有特征。C++中使用继承来支持重用。
  • 多态性。多态性是指当多种事物继承自一种事物时,同一种操作在它们之间表现出不同的行为。C++中使用函数重载、模板、虚函数等概念来支持多态性。

你可能感兴趣的:(C++中的OOP)