关于模板不能分离编译的问题

来源:互联网 发布:js children用法 编辑:程序博客网 时间:2024/05/17 03:12

在关于模板的这部分学习和实践中间,我们发现模板在使用时无法分离编译,即模板函数和模板类的声明和定义不能分开在两个文件中书写,这完全不符合于我们之前书写代码的基本习惯,这又是为什么呢?

大家都知道,模板类在编译的时候实际上是分为了两部的,首先在编译时先检测模板有没有语法错误,进而在编译过程中模板实例化以后再检测实例化后的语法是否有错误,而第一步是在编译过程中完成,第二部是在链接时完成的,由于链接时编译器不会去检测函数之间的实现关系,也不会关注是否所有的实例化都已经完成,导致函数实现部分无法实例化,从而导致编译器无法找到函数实现的部分从而产生这个错误。

原创粉丝点击