数据抽象

数据抽象

        结构式编程不能解决复杂的问题,对于数据类型来说,结构化编程提供了一个类型管理器接口,目的是构建内置数据类型,与用户的使用独立开来,但结构化编程建立的struct结构表示很大程度上依赖于内部的表示,一旦用户想要改变数据类型,就不得不探索内部函数结构,无法实现完全的独立。

图片发自简书App


      C++允许用户定义与内置类型几乎相同的数据类型,这样的类型被称为用户定义类型或抽象类型,在具体类型中,用户可以定义加减乘除操作,类似于int型和char型,可以定义rational型和complex型。在抽象类型中,将类型表示抽象化,相关的方法定义用虚函数进行,每一个用户定义的对象都有一个指针指向虚函数列表,当调用相关抽象类型时,直接将虚函数对应到相应虚函数列表的索引中,无需在意具体的数据类型。这样的操作,将用户和类型定义完全独立开来,产生的额外所需内存空间为每个对象的虚函数列表指针和虚函数列表所占用的空间。

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容