C++程序设计模型支持三种程序设计模型
1.程序模型(procedural model)
可以理解为过程化模型,就像C一样
2.抽象数据类型模型(ADT)
数据结构教材里有说过,查了下资料也不是很明确ADT的定义,(可以大致认为是一种封装了数据,以及基于数据的操作不明确的类型)就把它和面向对象模型对比来讲好了
3.面向对象模型(OO)
这种模型中彼此有一些相关的类型,通过一个抽象的基类(用以提供共同的接口)被封装起来,其它类都继承该父类。想像以下C++或者MFC的类库就明白了,都有一个共同的父类,ADT的话大概就是用户自定义的一个独立存在的没有继承和派生的孤立的类。
注意:纯粹以一种模型写程序有助于整体行为的稳固,然而如果混合了不同的模型,就可能带来让人惊吓的后果,例如将继承类的对象赋值给基类对象,而妄想实现多态,便是一种ADT模型和面向对象模型 混合编程带来严重后果的例子.
版权声明:本文为博主原创文章,未经博主允许不得转载。