链接器错误LNK1120和LNK2001

big*_*z34 1 c++ linker-errors visual-c++ visual-c++-2005

我讨厌这些链接器错误,任何想法我怎么能摆脱它们?

Error   2   fatal error LNK1120: 1 unresolved externals C:\Users\**********\Documents\Visual Studio 2005\Projects\Machine2\Debug\Machine2.exe
Run Code Online (Sandbox Code Playgroud)

和

Error   1   error LNK2001: unresolved external symbol "public: void __thiscall SecondDlg::OnBnClickedButton4(void)" (?OnBnClickedButton4@SecondDlg@@QAEXXZ) SecondDlg.obj
Run Code Online (Sandbox Code Playgroud)

Luc*_*ore 7

该错误可能来自以下原因之一:

  • 您忘了在cpp文件中实现该方法
  • 该cpp文件未包含在编译中
  • 你忘了出口你的课了 _declspec(dllexport)
  • 您没有链接到SecondDlg驻留的库


Mah*_*esh 5

public:void __thiscall SecondDlg :: OnBnClickedButton4(void)

链接器正在尝试最好地告诉您SecondDlg::OnBnClickedButton4(void)无法解析调用.这意味着它无法从任何已编译的源(要精确的目标文件)文件中找到成员函数的定义.您刚刚在界面中提供了声明,但没有在任何地方提供它的定义(即实现).