为什么类在C ++中称为类?

时间:2012-09-11 03:41:03

标签: c++

  

可能重复:
  Why “class” for class in Java?

我在考虑Haskell中的类型类,它允许您根据可以对它们执行的操作将类型分成不同的组。但是为什么类在C ++中称为类?他们原本打算对什么进行分类?

6 个答案:

答案 0 :(得分:10)

因为他们在Simula中被称为“类”。消息来源表明,Simula受到this Algol中“记录类”(即具有相关类型信息的结构化数据)提案的影响。大多数其他语言都是从Simula中直接或间接地得出其OO术语。

答案 1 :(得分:5)

对真实世界的实体(对象)进行分类。

答案 2 :(得分:3)

C ++中的类用于对对象进行分类。

答案 3 :(得分:3)

他们对对象进行分类,因此名称为:)

答案 4 :(得分:2)

实际上,罕见的用法是haskell中的用法。在大多数OO语言中, class 用于指代定义一类对象行为的类型。例如,Car是一类对象,其中有很多实例,我的车,你的车,还有别人的车。在Haskell中,该术语在元语言级别用于引用类型类,而不是对象类。

答案 5 :(得分:0)

在面向对象编程中,您拥有具有状态并支持某些操作的对象。对于一些不同的对象(例如,表示金融计划中的银行账户的对象,而不是表示赛车模拟器中的汽车的对象),状态和东西是完全不同的。所以我们不能以同样的方式对待所有对象。

表示一组工作方式相似的对象。如果你知道一个对象属于某个类,那么你就知道可以用它做些什么。代表银行帐户的对象可能支持depositwithdrawgetBalancegetAccountHolder等操作。

谈论“支持depositwithdrawgetBalancegetAccountHolder操作的对象类”或“支持{的对象类{1}}和accelerate以及getSpeed方法“只是正常使用”class“这个词(并且与”classify“相关,基本上只是意味着”放入类“;像一群学生一样,“阶级”这个词是完全不同的。)

显然,你很快就想命名特定的类,这样你就可以说steerBankAccount,而不是“支持的对象类...... 。“

所以一堂课就是这样;一个“事物”,它定义了作为类实例的对象的共同点。