我有一對夫婦在頭中的命名空間層次的一類聲明的方法:聯動命名空間功能
// MyClass.h
namespace network {
int Method1(double d);
int Method2(double d);
class MyClass
{
//...
}
}
然後在
//MyClass.cpp
int
Method1(double d)
{ ... }
int
Method2(double d)
{ ... }
該項目編譯乾淨定義,是一個依賴對於使用MyClass的UI項目。這些函數以前是MyClass的成員函數,但由於它更合適,所以被移動到名稱空間。
我的問題是當它到達鏈接器的UI項目抱怨:
1> network.lib(MyClass.obj):錯誤LNK2001:無法解析的外部符號 「INT __cdecl網::方法1(雙)」 (?INT @ ds @ sim @@ YAHN @ Z)
1> network.lib(MyClass.obj):error LNK2001:無法解析的外部符號「int __cdecl network :: Method2(double)」(?CINT @ ds @ sim @@ YAHN @ Z)
我在做什麼錯?
沒錯,就是它 - 傻了。在附註中,static或extern對名稱空間函數有什麼影響? – 2010-05-18 19:13:32