[問題] 無法將Class拆成.h跟.cpp

作者: l8PeakNeymar (十八尖山內馬爾)   2018-07-19 23:31:21
大家好
小弟有一個範例程式一直跑不起來 希望大家能協助
我做的事很簡單 就像下面描述的一樣簡單:
VS2010 新增一個名為 TEST 的 Win32 Console Application 專案
然後在這個專案裡面額外新增一個名為 CWin 的 Class Libraty 計畫
編譯器沒有做其他任何額外的設定
貼上所有程式碼:
// CWin.h
#pragma once
class CWin
{
public:
void nothing();
};
// CWin.cpp
#include "stdafx.h"
#include "CWin.h"
void CWin::nothing()
{
};
// TEST.cpp
#include "stdafx.h"
#include "../CWin/CWin.h"
int main()
{
CWin win1;
win1.nothing();
return 0;
}
出現錯誤訊息是:
Error 1 error LNK2019: unresolved external symbol "public: void __thiscall
CWin::nothing(void)" ([email protected]@@QAEXXZ) referenced in function
_main c:\...\TEST.obj
Error 2 error LNK1120: 1 unresolved externals c:\...\TEST.exe 1
作者: Sidney0503 (Sidney0503)   2018-07-19 23:35:00
linker沒設好 僅此而已
作者: l8PeakNeymar (十八尖山內馬爾)   2018-07-19 23:37:00
想請問怎麼設? 謝謝
作者: james732 (好人超)   2018-07-19 23:48:00
看起來是連結的時候找不到你的CWin實體
作者: johnpage (johnpage)   2018-07-20 02:38:00
大括號後面接分號?
作者: petercoin (彼得幣)   2018-07-20 08:52:00
專案上按右鍵>Properties>Linker>Input>把lib加在Additional Dependencies裡面
作者: l8PeakNeymar (十八尖山內馬爾)   2018-07-20 09:25:00
我的類別是DLL 就算改成lib然後照p大方式還是失敗
作者: sarafciel (Cattuz)   2018-07-20 11:04:00
作者: petercoin (彼得幣)   2018-07-20 12:47:00
你build dll之後同一個目錄內會有lib,要把那個lib加進dependency,但是還要注意lib路徑問題,也許可以用$(SolutionDir)Cwin/release/cwin.lib這樣的方式填入不過還是要看你的檔案是產生在哪

Links booklink

Contact Us: admin [ a t ] ucptt.com