C++中的外部库

External Library in C++

本文关键字:外部 C++      更新时间:2023-10-16

EDIT:C++模板重复,链接错误

谢谢Bo,这也是我的问题!

我在Windows 7 x64上使用Cywgin和NetBeans 7.1。

我有一个NetBeans项目设置为静态库,所有代码都是用C++编写的。

当我将这个库项目包含在另一个NetBeans项目中并包含库中相应的头文件时,链接器无法在库中找到类/函数。

你知道我做错了什么吗?

这个ptr类是在第一个静态库中编译的吗?只有*.h可以作为第二个静态库的接口?如果是,那么在第一个库模板中,ptr不是用int类型创建的,而且这种构造函数/析构函数也不存在,所以您可以从第二个库中使用它。

处理此问题的最简单方法是包含ptr.cpp,并在第二个库中对其进行编译。这将允许在编译期间为int类型创建模板代码。另一个解决方案是在第一个库中以某种方式使用具有int类型的ptr模板,以便在那里创建它。