64,650
社区成员
发帖
与我相关
我的任务
分享
//file1:head.h
#ifndef HEAD_H
#define HEAD_H
namespace space
{
int i;
void test();
};
#endif
//file2:test.cpp
#include "head.h"
#include <iostream>
void space::test()
{
std::cout<<"using variable cout is ok!";
}
//file3:main.cpp
#include <iostream>
#include "head.h"
int main()
{
space::i=1;
std::cout<<"i="<<space::i;
return 0;
}
//file1:head.h
#ifndef HEAD_H
#define HEAD_H
namespace space
{
extern int i;
void test();
};
#endif
这里编译就会出现“找不到定义”错,然后在test.cpp或main.cpp其中之一加上:
int space::i = 0;
就可以了。