我试图将2个.cpp文件与1个.h文件一起使用,但是每当在两个.cpp文件中都包含.h文件时,都会出现“多个定义”错误。所以我这样做是为了显示我的问题,是的,我知道thing.cpp从来没有做任何事情,但是仍然会触发问题 如果有帮助,我也会使用Code :: Blocks和GNU GCC编译器。
main.cpp
stream {
resolver 172.31.0.2;
upstream redis {
zone tcp_servers 64k;
server redisservice.local service=_http._tcp resolve;
}
server {
listen 12345;
status_zone tcp_server;
proxy_pass redis;
}
}
thing.cpp
Set ws2 = Worksheets("MajorInventoryList")
ws2.Cells(WorksheetFunction.Match(me.txtID.value), 10) = "On Loan"
hello_world.h
#include <iostream>
#include <C:\0w0\Multiple file test\Hello_world.h>
#include <windows.h>
using namespace std;
int main()
{
A:
Sleep(500);
Hello();
x++;
if(x==5)
{
Sleep(500);
Hello();
return -1;
}
goto A;
}
我希望它可以正常工作,但不会,并且出现这些错误
#include <iostream>
#include <C:\0w0\Multiple file test\Hello_world.h>
#include <windows.h>
using namespace std;
int thing()
{
A:
Sleep(500);
Hello();
x++;
if(x==5)
{
Sleep(500);
Hello();
return -1;
}
goto A;
}
编辑:我不知道这与你们所说的其他问题有多接近。那我该怎么做呢?
答案 0 :(得分:0)
hello_world.h:#endif必须在文件末尾,以避免重复定义。
#ifndef Hello_World_H
#define Hello_World_H
int x=1;
using namespace std;
int Hello()
{
cout << x << endl;
return 69;
}
#endif // Hello_World