【发布时间】:2013-10-13 02:50:28
【问题描述】:
我对数据抽象的理解是对用户隐藏技术细节,只显示必要的细节。所以数据抽象是一个面向对象的特性。我的问题是:C 是否也支持数据抽象?
如果是这样,为什么数据抽象是面向对象的编程语言特性而不是过程语言特性?
如果我的问题的答案是否,那么 C 中的结构和枚举呢?他们还向用户隐藏详细信息。
【问题讨论】:
-
“为什么数据抽象是面向对象的编程语言特性而不是过程语言特性?” - 事实并非如此。
-
那为什么到处都提到它是 OOP 特性而不是过程语言特性呢??
-
你得出的结论是所有男人都是猫,但事实并非如此。数据抽象是一件令人向往的事情。 OOP 是一种提供数据抽象的编程风格。您可以通过多种不同方式实现数据抽象。
-
最重要的是,完全可以用 C 语言编写面向对象的风格。它只是比其他语言更冗长和嘈杂。
-
看看GObject。
标签: c oop procedural-programming