#include在文件中间是否是一种好习惯?

时间:2018-12-12 13:40:18

标签: c++ header include

在我的课堂的私有部分中,有很多功能,比如说:

  • 目的A的3个功能
  • 5个目的B
  • 1个用于目的

我想知道是否可以制作一个.h文件,其中包含所有目标A函数,一个用于目标B,一个用于C,然后将每个函数都包含在类定义的中间。

如果认为这是不好的做法,那么压缩这些函数原型的最佳方法是什么?

1 个答案:

答案 0 :(得分:3)

依靠包容性是您无法封装这些目的时尝试使用的拐杖。为他们写类型

class PurposeA {
  // Functions
};

class PurposeB {
  // Functions
};

class PurposeC {
  // Functions
};

然后根据您的需要私下继承或撰写:

class Foo : private PurposeA,
            private PurposeB,
            private PurposeC {
};

class Bar {
private:
  PurposeA a;
  PurposeB b;
  PurposeC c;
};

您的函数膨胀很强烈地表明您的课程承担了太多的责任。重构和封装为更小,更集中的类将有助于使总体设计更好。