我对C ++很新,我试图理解为什么需要先编译一些库。
例如,某些boost库只是标题(例如msm),其他一些需要编译(例如定时器)
我找不到一个很好的解释,为什么会这样。有人可以帮我理解吗?
谢谢
答案 0 :(得分:1)
某些类型的内容仅保留在标头中,而不是通常的.h(pp)
和.cpp
文件。我所知道的只有一个是模板化的类和函数。我肯定会利用这个优势。
答案 1 :(得分:1)
#include
他们。template
。但是,通过使用头文件,人们可以逃脱多少,或者愿意忍受多少,这是有限制的。例如,处理共享库中的静态对象,就像 C ++ 标准一无所知,有时只能在标题中完成。