在Visual C ++中包含自己的标头的简单方法

时间:2014-09-05 14:23:30

标签: c++ visual-studio visual-c++ header unresolved-external

我是处理头文件的新手。因此,如果问题很愚蠢,请原谅我。

我尝试将自己的标头包含到Visual C ++ 2013 Express项目中,而不将源文件或头文件添加到解决方案资源管理器(该目录在“其他包含目录”中列出)。结果是lnk2019错误。

但是,如果仅包含.cpp文件,则可以使用。也可以仅将源文件添加到解决方案资源管理器中。

代码实际上非常原始:

test.h:

#if !defined TEST_H
#define TEST_H
int test(int number);
#endif

TEST.CPP:

#include "stdafx.h"
#include "test.h"

int test(int number)
{
    return 2*number;
}

main.cpp中:

#include "stdafx.h"
#include <iostream>
#include "test.h"


int main()
{
    std::cout << test(2);
    system("Pause");
    return 0;
}

错误:

Error   1   error LNK2019: unresolved external symbol "int __cdecl test(int)" (?test@@YAHH@Z) referenced in function _main  c:\Users\Lukas\documents\visual studio 2013\Projects\Euler20\Euler20\Euler20.obj    Euler20

是否有一种简单的方法可以通过键入#include“example.h”来包含自己的头文件,方法与标准C ++头文件的方式相同(前提是此头文件的目录在“其他包含”中列出目录“)?

我已经知道您可以创建一个自己的库,如下所示:

http://msdn.microsoft.com/library/ms235627.aspx

但这种做法对我来说似乎很不方便。

无论如何,包含.cpp文件而不是头文件的缺点是什么?

0 个答案:

没有答案