轿车级别(OOPS概念)

  • 本文关键字:OOPS 概念 c++
  • 更新时间 :
  • 英文 :


你好,我有一个c++编程作业问题。

我很努力,但不知怎么的我就是得不到。

假设你有一个"Engine"类,它的"start()"方法原型如下,写一个"Car"类,它的"turnKey()"方法告诉你汽车是否启动了。Car类应该封装Engine类。

bool Engine::start();
有谁能帮帮我吗?

你需要这样做。

简单地创建一个car类,其中包含一个引擎实例。这被称为has-a关系,而不是is-a关系("汽车有发动机",而不是"汽车是车辆")。

汽车类turnKey方法可以简单地调用其引擎的start方法,并检查返回代码,看看它是否启动正常。


注意,这是非常简单的。一个"适当"的解决方案是让引擎保持其状态(运行或不运行),然后汽车可以查询该状态,以便(例如)在你试图启动一辆已经运行的汽车时不会发出可怕的研磨声。

我不知道这种情况是否适用于现代的电子汽车——我上一次遇到这种情况是在1965年的霍尔顿HR上,这可能是我在没有汽车公司超级计算机的帮助下自己修理的最后一辆车:-)。

最新更新