我定义了一个函数show()
如内联在名为的头文件中ex.h
以及里面函数的定义ex.cpp
。我预计这会给我一个错误,因为编译器不知道在哪里替换什么show()
函数被调用。但因为我使用的是 IDE,所以它工作得很好。怎么会发生这种事?
顺便说一句,当我尝试手动编译它时,它给了我一个错误show()
已使用但未定义。
函数的定义(函数之间的部分)是非常重要的{...}
) 被放置在头文件中,除非该函数仅在单个.cpp
file.
特别是,如果将内联函数的定义放入.cpp
文件,然后你从其他地方调用它.cpp
文件,你会得到一个"unresolved external"
来自链接器的错误。
[阅读更多] http://www.parashift.com/c++-faq-lite/inline-functions.html
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)