比如我在2.cpp文件中这样定义:int *InPut_Temp=new int[N_Max];
而我想在1.cpp文件中使用这个变量,如果我extern int*InPut_Temp,编译时报错:unresolved external symbol "int * InPut_Temp" (?InPut_Temp@@3PAHA),如果我在1.cpp中#include“2.cpp”得到的报错更多,那么如果要想实现我的目的应该怎样呢?
而我想在1.cpp文件中使用这个变量,如果我extern int*InPut_Temp,编译时报错:unresolved external symbol "int * InPut_Temp" (?InPut_Temp@@3PAHA),如果我在1.cpp中#include“2.cpp”得到的报错更多,那么如果要想实现我的目的应该怎样呢?
extern int g_nVal;//2.h
#include "1.h"
我vs2005 pro 步骤如下1. 新建win32 console project
2. 定义两个源文件 bbb.cpp ,aaa.cpp
3. bbb.cpp 内容如下
int * p = new int[100];
4. aaa.cpp 内容如下
#include <iostream>
extern int * p;
void main()
{
std::cout<<"Hello World"<<std::endl;
p[0] = 'a';
std::cout<<(char)*p<<std::endl;}
经编译,link 没有发现任何错误
输出结果如下:
Hello World
a
请按任意键继续. . .请求给分,谢谢:)
extern int g_nVal;//2.h
#include "1.h"
然后1.Cpp 去Include 2.h。