xxxuuuooo 2018-04-13 13:06 采纳率: 50%
浏览 1244
已采纳

关于C++项目.h文件使用规则 的为题

在一个项目中,如果需要用到函数f,那么f必须在.h 文件当中声明吗?或者说在有a.h文件的前提下,可以直接在a.cpp里面声明并定义吗?

  • 写回答

1条回答 默认 最新

  • threenewbee 2018-04-13 15:48
    关注

    从两个层次回答这个问题

    从编译器的角度看,.h文件和.cpp文件没有任何区别,如果你愿意,完全可以把所有代码写在.h文件里,并且在cpp文件里包含它,而不写别的代码。一样可以编译程序
    另外,虽然我们很少这么做,但是c++编译器实际上也可以单独编译h文件,同时,我们也可以include一个cpp文件。

    从程序员的角度看,h文件和cpp文件有逻辑上的分工,前者专门用于包含(相同的代码需要放在多个文件里),后者用于一般的代码。因此h文件里放的是多次使用的内容,而避免重复。这和c++语言的特点有关,c++要求无论是函数还是类还是变量,都要先定义才能使用。所以定义就是每个调用的文件里都需要重复而值得放在h文件里的。但是并不只有这样的内容可以放在h,也不表示定义就一定要写在h文件里,比如一个函数,只在一个cpp用,就完全没有必要。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 求daily translation(DT)偏差订正方法的代码
  • ¥15 js调用html页面需要隐藏某个按钮
  • ¥15 ads仿真结果在圆图上是怎么读数的
  • ¥20 Cotex M3的调试和程序执行方式是什么样的?
  • ¥20 java项目连接sqlserver时报ssl相关错误
  • ¥15 一道python难题3
  • ¥15 牛顿斯科特系数表表示
  • ¥15 arduino 步进电机
  • ¥20 程序进入HardFault_Handler
  • ¥15 关于#python#的问题:自动化测试