0
編輯:重複的C++ template, linking error外部庫用C
感謝博,這是我有同樣的問題!
我在Windows 7 x64上使用Cywgin和NetBeans 7.1。
我有一個NetBeans項目設置爲靜態庫,所有用C++編寫的代碼。
當我將此庫項目包含在另一個NetBeans項目中幷包含庫中相應的頭文件時,鏈接程序無法找到庫中的類/函數。
任何想法我做錯了什麼?
編輯:重複的C++ template, linking error外部庫用C
感謝博,這是我有同樣的問題!
我在Windows 7 x64上使用Cywgin和NetBeans 7.1。
我有一個NetBeans項目設置爲靜態庫,所有用C++編寫的代碼。
當我將此庫項目包含在另一個NetBeans項目中幷包含庫中相應的頭文件時,鏈接程序無法找到庫中的類/函數。
任何想法我做錯了什麼?
這個ptr類是在第一個靜態庫中編譯的,只有* .h作爲第二個接口可用?如果是,那麼在第一個庫模板中,ptr不是用int類型創建的,這種構造函數/析構函數不在那裏,所以你可以在第二個庫中使用它。
處理這個問題的最簡單方法是包含ptr.cpp並將其編譯到第二個庫中。這將允許在編譯期間爲int類型創建模板代碼。 另一種解決方案是以某種方式在這個第一個庫中使用帶有int類型的ptr模板,以便它在那裏創建。
可能的[C++模板,鏈接錯誤]的副本(http://stackoverflow.com/questions/1353973/c-template-linking-error) – 2012-01-10 16:17:38
使用模板需要在頭文件中包含定義,所以編譯器可以看到它們。 – 2012-01-10 16:19:24