这实际上是一个关于优先级的问题:在C++中,避免使用指针还是避免在头文件中使用#include更加优先?
“不要在头文件中使用#include。”
根据我的研究,似乎有一些模糊性。在这个SO问题中,排名第一的答案表示:“……确保你实际需要一个include时,当前向声明或者干脆完全不使用可以解决问题。”(来源于Header files and include best practice)
而这篇文章则解释了过多的头文件引用对编译时间产生的负面影响:http://blog.knatten.org/2012/11/09/another-reason-to-avoid-includes-in-headers/ 除了本教程外,还有一句话:“……你应该尝试将所有代码放在CPP类中,只在HPP文件中声明类。”:https://github.com/LaurentGomila/SFML/wiki/Tutorial%3A-Basic-Game-Engine#wiki-declarations
“不要在头文件中使用#include。”
根据我的研究,似乎有一些模糊性。在这个SO问题中,排名第一的答案表示:“……确保你实际需要一个include时,当前向声明或者干脆完全不使用可以解决问题。”(来源于Header files and include best practice)
而这篇文章则解释了过多的头文件引用对编译时间产生的负面影响:http://blog.knatten.org/2012/11/09/another-reason-to-avoid-includes-in-headers/ 除了本教程外,还有一句话:“……你应该尝试将所有代码放在CPP类中,只在HPP文件中声明类。”:https://github.com/LaurentGomila/SFML/wiki/Tutorial%3A-Basic-Game-Engine#wiki-declarations
“不要使用指针”。
但是,也有证据表明,大多数情况下应该避免使用指针:
- c++:何时使用指针?
- https://softwareengineering.stackexchange.com/questions/56935/why-are-pointers-not-recommended-when-coding-with-c