百科问答小站 logo
百科问答小站 font logo



为什么C++中,含有函数声明的头文件应该被包含在定义函数的源文件中? 第1页

  

user avatar   sun-qiao-64-84 网友的相关建议: 
      

在实际的项目编程中

.cpp文件中定义的函数分为两种,一种是对外提供接口供外部调用的,一种是特定功能封装成一个函数,供前者调用,它们只在本文件里面调用,一般申明为static。

这时候存在一个问题:

比如,你的function_1假如现在必须调用function_3才能完成任务,那就完蛋了,因为function_3定义在function_1后面,这个时候,最好的方法就是把所有函数的申明放到.hpp中,然后.cpp包含一起申明,相互调用时就不在乎函数的定义先后了。

这个时候

对于那些只在本文件内部被调用的函数,可以在head_inner.hpp中申明,需要提供给外部的函数,可以申明在head.hpp中。

前者.cpp包含自己用

后者.cpp包含且提供给其他人。




  

相关话题

  多核CPU中,利用多线程进行排序中出现了一些奇怪的现象,不知道其背后的原因是什么,希望有人能给予解答? 
  Linux 和 Windows 的内存申请机制有何不同? 
  C#填了java哪些坑?java填了C++哪些坑?C++填了C哪些坑? 
  C++ 的智能指针不就基本解决了野指针问题了吗?为什么还要吹捧rust的内存安全? 
  C++ 实现接口与实现分离后,文件变得更多了,到底有什么好处? 
  C++ 有多难? 
  大项目不允许使用C++STL 容器合理吗? 
  c语言有哪些图形库(非c++)? 
  如何评价不认为C++三大特性是封装、继承、多态的程序员? 
  const TYPE * 究竟限制的是什么? 

前一个讨论
怎么看一个人有没有领导力?
下一个讨论
在5G的运用上,世界上多数ICT公司都没有选择矿山为突破口,而华为把矿山作为切入点,如何看待这一选择?





© 2025-07-01 - tinynew.org. All Rights Reserved.
© 2025-07-01 - tinynew.org. 保留所有权利