将类函数与其实际功能分开声明有啥好处?

Posted

技术标签:

【中文标题】将类函数与其实际功能分开声明有啥好处?【英文标题】:What's the benefit of declaring class functions separately from their actual functionality?将类函数与其实际功能分开声明有什么好处? 【发布时间】:2010-05-26 14:57:37 【问题描述】:

在 C++ 中,拥有一个带有函数的类有什么好处...

class someClass
 public:
  void someFunc(int arg1);
;

然后在 int main 之后声明函数的实际功能

int main() 
     return 0; 

void someClass::someFunc(int arg1)
       cout<<arg1; 

此外,在 .h 头文件中声明类,然后将功能放入 #includes .h 文件的 .cpp 文件有什么好处?

【问题讨论】:

当你有一个超过 10 行的程序时,你会很高兴你已经将你的类放在单独的文件中 main() 函数。 顺便说一句,通常的约定是至少有 3 个文件:类头文件、类定义文件和主文件。类头包含类声明(因此其他翻译单元可以包含它)。类定义文件包含类的实现。主文件包含与主应用程序相关的功能。通过将类文件从主程序中分离出来,允许其他代码以最小的改动重用它们。 【参考方案1】:

依赖管理。该类的用户只需要包含头文件,因此他们不依赖于实现。

另一个用途是打破循环依赖。

对于玩具程序来说,这两个问题看起来都是浪费时间,但随着程序的发展,它们开始变成一个非常糟糕的问题。

【讨论】:

例如见***.com/questions/625799/… 依赖管理甚至对于跨越几十万行的程序变得至关重要。当有人更改评论时,您不想重新编译整个内容:/

以上是关于将类函数与其实际功能分开声明有啥好处?的主要内容,如果未能解决你的问题,请参考以下文章

请问把基类构造函数声明为protected有啥好处呢(抽象基类)

在 R 的命名空间中导入有啥好处?

嵌套函数有啥好处(一般/在 Swift 中)

C++中,怎么将函数模板的声明和定义分开写?

请问手机开启‘强制使用gpu渲染’功能有啥好处和坏处?

C# 中 用委托有啥好处? 它起啥作用?