作者l8PeakNeymar (十八尖山内马尔)
看板C_and_CPP
标题[问题] 无法将Class拆成.h跟.cpp
时间Thu Jul 19 23:31:21 2018
大家好
小弟有一个范例程式一直跑不起来 希望大家能协助
我做的事很简单 就像下面描述的一样简单:
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)" (?nothing@CWin@@QAEXXZ) referenced in function
_main c:\...\TEST.obj
Error 2 error LNK1120: 1 unresolved externals c:\...\TEST.exe 1
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 180.217.171.213
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/C_and_CPP/M.1532014284.A.89D.html
1F:推 Sidney0503: linker没设好 仅此而已 07/19 23:35
2F:→ l8PeakNeymar: 想请问怎麽设? 谢谢 07/19 23:37
3F:→ james732: 看起来是连结的时候找不到你的CWin实体 07/19 23:48
4F:推 johnpage: 大括号後面接分号? 07/20 02:38
5F:→ petercoin: 专案上按右键>Properties>Linker>Input>把lib加在 07/20 08:52
6F:→ petercoin: Additional Dependencies里面 07/20 08:52
7F:→ l8PeakNeymar: 我的类别是DLL 就算改成lib然後照p大方式还是失败 07/20 09:25
9F:→ petercoin: 你build dll之後同一个目录内会有lib,要把那个lib加进 07/20 12:47
10F:→ petercoin: dependency,但是还要注意lib路径问题,也许可以用 07/20 12:48
11F:→ petercoin: $(SolutionDir)Cwin/release/cwin.lib这样的方式填入 07/20 12:51
12F:→ petercoin: 不过还是要看你的档案是产生在哪 07/20 12:51