2012-03-15 95 views
1

我遇到一個關於LNK2019問題,當我編譯我的項目與Visual Studio 2010。誰能幫助我?謝謝。C++鏈接錯誤LNK2019

gspan.obj:錯誤LNK2019:無法解析的外部符號「公共:類的std ::向量,類的std ::分配器>,類的std ::分配器,類的std ::分配器>>> __thiscall gSpan ::記號化(類的std :: basic_string的,類的std ::分配器>)」(?記號化@ @@ gSpan QAE?AV?$ @矢量V'$ basic_string的@ DU?$ char_traits @ d @ @@ STD V'$分配器@ d @ 2 @@性病@@ V'$ @分配器V'$ @的basic_string杜?$ @ char_traits @ d @@性病V'$ @分配器@ d @@ 2 STD @@@ 2 @@ STD @@ ?V $ @的basic_string杜$ @ char_traits @ d @@性病V $ @分配器@ d @@ 2 3 @@ Z)在函式「私人:?無效__thiscall gSpan ::閱讀(類的std :: basic_string的,類的std ::分配器>)」(?讀@ @@ gSpan AAEXV?$ basic_string的@ DU?$ char_traits @ d @ @@ STD V'$分配器@ d @ @@ 2 STD @@@ Z)中被參考

C:\ Users \ cool \ documents \ visual stu DIO 2010 \項目\ OGSPAN \調試\ OGSPAN.exe:致命錯誤LNK1120:1個無法解析的外部符號

回答

1

請檢查你的源代碼,該方法gSpan::tokenize未實現。它的名字叫gSpan::read。順便說一下,gSpan::is_min也沒有實現。

您可以使用dumpbin.exe檢查生成的gspan.obj。所有其他gSpan::方法定義在SECT??(其中??是我認爲的兩個十六進制數字)部分,而gSpan::tokenizegSpan::is_minUNDEF

重現該錯誤,使用此代碼:

class a { 
public: 
    void func1(void); 
    void func2(void); 
}; 

void a::func1(void) 
{ 
    func2(); 
} 

int _tmain(int argc, _TCHAR* argv[]) 
{ 
    a b; 
    b.func1(); 
    return 0; 
} 
+0

我忘記在我的代碼中實現標記化...,謝謝你的幫助!最好 :) – LoveTW 2012-03-15 10:36:45

1

LNK2019意味着你的目標文件中的一個被參考的符號(函數或變量名),該沒有在其中任何一箇中定義。通常這意味着你聲明並調用了一個函數,但忘記了實際執行該函數。

+0

如果我正確讀取錯誤,它看起來像它的唯一缺少的空白gSpan的定義::閱讀(的std :: string)。 – twsaef 2012-03-15 04:01:29

+0

感謝您的幫助!你讓我知道'LNK2019'的含義!最好:) – LoveTW 2012-03-15 10:37:38