c++ fatal error LNK1561: 必须定义入口点

来源:互联网 发布:诸暨市行知小学的资料 编辑:程序博客网 时间:2024/05/16 23:37

模板类:template<class t>出错
main.cpp,abc.h


(DOS界面)1 解决:模板类abc.h函数都在头文件里实现,在abc.h前加emplate<class t>,函数前无需再添加,main.h也无需再添  加emplate<class t>

类模版并不是真正的类,它只是告诉编译器一种生成类的方法,编译器在遇到类模版的实例化时,就会按照模版生成相应的类。
在这里就是编译器遇到main函数中的test<int> abc;时就会去生成一个int类型的test类。
而每一个cpp文件是独立编译的,那么如果将类模版的成员函数单独放在一个cpp文件中,编译器便无法确定要根据什么类型来产生相应的类,也就造成了错误。
一般的解决方法就是将类模版中的成员函数定义也写入.h文件中。

阅读全文
0 0
原创粉丝点击