1个头文件,3个CPP文件。你把共同的功能放在哪里?

问题描述 投票:0回答:2

我们假设我有以下文件:

  • polygon.h
  • rectangle.cpp
  • triangle.cpp
  • circle.cpp

矩形,三角形和圆形都有不同的calculateArea实现,但它们都具有相同的getNumSides功能。你把getNumSides放在哪里?

如果有人可以帮我设计这个会很好

c++
2个回答
3
投票

制作抽象类多边形并在其中定义getNumSides()。函数calculateArea()应该是类polygon中的纯虚函数。当你导出rectangletrianglecircle类时,将calculateArea()的实现放在那些中。


0
投票

一种常见的方案是为每个类保留一个头/源文件,并使基本文件名指示它包含的类的名称,例如,

class Polygon在名为Polygon.h的头文件中声明,其源文件在Polygon.cpp中,Rectangle.h中的Rectangle类和Rectangle.cpp等。

当你开始有很多课程时,任何其他方案似乎都会引起一些麻烦。

© www.soinside.com 2019 - 2024. All rights reserved.