Can't access function from header file

2019-02-26 18:44发布

//head.h//
extern int sum(int,int);
//head.cpp//

#include "head.h"
#include "stdafx.h"
int sum(int x, int y)
{
return (x+y);
}
//mainfn.cpp//

#include "head.h"
#include "stdafx.h"
#include string
#include iostream
#include stdio.h
using std::string;
using std::cout;
using namespace System;

int main()
{
int x=10,y=2;
printf("value:  %d",sum(x,y));
Console::ReadLine();
return 0;
}

While buliding in Visual studio 2005, this vc++ project is giving following error:

error C3861: 'sum': identifier not found.

Can anybody help me out with this?

2条回答
干净又极端
2楼-- · 2019-02-26 19:21

You need to place the inclusion of head.h after stdafx.h. When precompiled headers are enabled the compiler will ignore the contents of all includes that occur prior to (in this case) the inclusion of stdafx.h .

查看更多
Evening l夕情丶
3楼-- · 2019-02-26 19:23

Either remove stdafx.h from the project, and turn of precompiled headers.. or try moving head.h to be included after stdafx.h instead of before.

查看更多
登录 后发表回答