【发布时间】:2011-12-12 23:07:53
【问题描述】:
当你包含一些文件时会发生什么,当你转发声明一些函数/类时会发生什么?如果两个文件包含同一个文件,第一个会成功读取所有函数,第二个会失败但仍然可以使用这些函数??
当我转发声明某个函数时会发生什么?这个函数现在是否“保存”了,我可以在任何地方使用它,还是只知道同一个文件?那么为什么两个带有包含的文件(到一个带有保护的文件)会起作用?
我可以将所有内容都包含在主目录中而不再打扰吗?
编辑:
为什么 cpp 文件应该包含它们的标题?如果我不包括它们怎么办?
【问题讨论】:
-
前向声明只定义了编译单元的函数。对于要在其中使用函数的每个编译单元,您必须在函数声明中包含头文件。
-
@freedrull 前向声明不定义,它们声明,因此得名。此外,前向声明函数与前向声明用户定义类型不同。
标签: c++ header include forward-declaration