-2

循环功能

  1. 类:但c中也有结构和联合
  2. 运算符重载:我们可以写 0.1+3.4 或 1+3 或 'a'+'b' 这是什么,+ 运算符用于整数、浮点数和字符加法,所以它是一种运算符重载?
  3. 继承:在 c 中,当我们使用 include 将任何文件包含在另一个文件中时include<iostream.h>,我们将 iostream 文件包含在另一个文件中,这样我们也在 c 中实现了继承。

    简而言之,我的问题是针对每一个面向对象的问题,我都有一些论据,所以任何人都可以帮助我清除所有面向对象的特性与 c 语言的比较。

    c 不是面向对象的语言,但我上面的论点证明,c 也是面向对象的语言

    因此,与 c 语言相比,我想更加平静地了解面向对象的功能。

4

2 回答 2

3

C 语言不支持面向对象编程,但这并不意味着您不能在代码中实现面向对象的概念(例如封装、信息隐藏、多态)。你只需要更加努力地去做,因为语言并不能帮助你。

Bjarne Stroustrup 必须做大量工作才能在 C 之上添加对 OOP 的语言支持。C++ 并非易事。

于 2012-05-09T16:51:29.670 回答
2

1 一个类不仅仅是一个联合或结构,一个类可以包含变量和方法(代码)联合或结构都不能包含逻辑。

  1. 运算符重载不是严格意义上的 oo 特性,java 没有运算符重载。你的例子是一个有限的重载,你不能让 structA + structB 在c中工作

  2. 加载库和继承之间有很大的区别。继承允许您创建一个具有父级所有行为的子类型,然后允许您修改它们或添加更多功能。你可以在 C 中做到这一点,但这会更加困难和复杂

您对 OO 概念的理解似乎相当有限,我会阅读一些基本的 OO 教程来了解这些概念。

于 2012-05-09T17:00:51.917 回答