首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >C编程语言是面向对象的吗?

C编程语言是面向对象的吗?
EN

Stack Overflow用户
提问于 2010-07-14 06:06:25
回答 16查看 93.4K关注 0票数 47

我和一位同事谈论C和C++,他声称C是面向对象的,但我说不是。我知道你可以用C做类似面向对象的事情,但C++是一种真正的面向对象语言。

你的想法是什么?

此外,它还引发了关于谁决定面向对象意味着什么的讨论,以及很难说面向对象真正正式意味着什么。你对此有何感想?

EN

回答 16

Stack Overflow用户

回答已采纳

发布于 2010-07-14 06:08:29

如果是“是面向C对象的吗?”你的意思是“C语言是专门为支持面向对象编程而设计的吗?”那么,不,C显然不是面向对象的。

票数 70
EN

Stack Overflow用户

发布于 2010-07-14 06:13:27

您可以使用任何语言以面向对象的风格进行编程。(我认为运行时多态性--即虚方法--需要一种支持函数指针的语言。)

这里有几个例子:

C:http://www.emilmont.net/doku.php?id=c:object_oriented_c

  • A中面向对象风格的简短总结:http://www.eventhelix.com/realtimemantra/basics/object_oriented_programming_in_c.htm

与用C编写的同一程序之间的比较:

票数 20
EN

Stack Overflow用户

发布于 2010-07-14 06:07:41

C不是面向对象的。这就是++背后的全部目的

至于什么是面向对象的定义:检查wikipedia

就我个人而言,如果它支持继承、封装和多态性,那么您就可以使用它了。这里的另一个关键是拥有漂亮的关键字,如class和object,这有助于……

真正的面向对象语言的例子(不是决定性的)有: Smalltalk、Java、c#、Python、Ruby、C++。

此外,还可以使用扩展来提供面向对象的特性,如PHP、Perl、VB (而不是.Net)……

票数 10
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3241932

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档