Posted on 2012-02-23 08:04 
C小加 阅读(1357) 
评论(2)  编辑 收藏 引用  所属分类: 
C++和面向对象 
			 
			
		 
		extern关键字的作用
  1、 声明外部变量或者函数
  当你所需要的变量或者函数在另一个文件里边的时候,除了用include包含,还可以用extern声明外部变量或者函数。
//File1.cpp
int a;
int fun(int w)
{
        return ++w;
}
//main.cpp
#include<iostream>
using namespace std;
int main()
{
        extern int a;//声明外部变量
        extern int fun(int w);//声明外部函数
        a=5;
        cout<<a<<endl;// 5
        cout<<fun(a)<<endl;// 6
        return 0;
}
这里要注意的一点是,extern关键字的作用仅仅是声明,没有分配内存空间,声明的格式和定义的格式一定要严格相符。
2、 extern ”C” 链接指定为C函数库
  参数重载是C++的新特性,在C中是没有的。在使用C++写代码的时候,如果调用C函数出错(出错的原因见C++重载的实现机制),则需要声明extern “C”将链接指定为C函数库。
extern "C" 
{  
/* */
*/  }