首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

新手看C++ PREMIER疑问:关于extern用法解决方法

2012-04-22 
新手看C++ PREMIER疑问:关于extern用法简单表述,希望大家明白我的意思书里讲extern是定义(声明)全局变量的

新手看C++ PREMIER疑问:关于extern用法
简单表述,希望大家明白我的意思

书里讲extern是定义(声明)全局变量的用处,意思是在一个文件里面定义了extern int v;在其它.CPP文件里可以调用这个v.那么请问是不是可以用下面这样的程序去理解?但我编译错误。搞不清楚到底怎么用这个extern

这段代码是准备调用另外一个CPP文件里的V的数字并打印到屏幕

C/C++ code
#include <iostream>int main(){extern int v;std::cout<<v<<"\n";return 0;}



=========================
这段代码是定义V的初值为1
C/C++ code
#include <iostream>int main(){int v=1;return 0;}



我不知道是我理解错了,还是位置放错了,还是什么?因为C++ PREMEIER书里也没有解释的很清楚。我搞不明白了,求解。

也请将正确的用法,包括代码段放上来,否则还是怕误解。谢谢大家!!




[解决办法]
放到main函数外面。
[解决办法]
第一文件cpp
C/C++ code
#include "stdafx.h"int v = 1;
[解决办法]
你在xx.cpp里定义v
int v=10;

在xx.h里声明它是extern的
extern int v;

然后在需要使用它的地方包含xx.h
#include "xx.h"
...
...
int main()
{
printf("%d",v);
}


[解决办法]
extern 只是告诉编译器,这个东西一定存在于程序之中,但多半不在本部分代码里面,然后编译器就会放行,通过编译。

但在链接的时候,该玩意一定要存在,如果不存在,链接就不能通过。

热点排行