`
lizhuohuang
  • 浏览: 119928 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

extern 用法

    博客分类:
  • C++
 
阅读更多
转载
用例子给你示范 
// 1.cpp 
int x = 10; 
// 2.cpp 注意没有包含1.cpp 
#include <iostream> 
using namespace std; 
extern int x;
int main () 
{ cout << x << endl; } 
//则输出10 
两个文件同在一个项目(project)中,你不包含某个文件(cpp)而可以用它内部定义的变量,(里是.pp不是.h, 因为在.h中定义的数据不能在.cpp中用除非这个.cpp包含这个.h文件) 
例: 
// 1.h 
#include <iostream> 
void print() 
{ 
std::cout << "hello!" << std::endl; 
} 
// 2.cpp 
#include <iostream> 
using namespace std; 
// 以上两句在这个例子中可以不要 
extern void print(); 
int main () 
{ 
print(); 
} 
就会出错因为1.h中的void print();在不包含它的文件中是不可调用的,即使在声明了extern 也于事无补,如果你将这个例子中的1.h名字换成1.cpp就对了! 
从这些可以看出来,extern在这里起的作用是告诉编译器,你这个print()已经在某个.cpp中已经定义了,这里只不过是声明一下有这个东西,然后拿来用一下。定义只能出现一次,声明却可出现多次,也就是说extern声明可在多个文件中用(包括.h) 
还有,你还可以屏蔽extern声明,如第二个例子中的第二个.cpp文件可以改成 
#include <iostream> 
using namespace std; 
// 这里以上两句不能省略,因为,这里extern void print();函数已经不起作用了,在这里调用的而是本文件中定义的void print()函数,其中用到了cout,endl;他们来源于std::<iostream> 
extern void print(); 
void print() 
{ 
cout << "world!" << endl; 
} 

int main () 
{ 
print(); 
} 
// 输出结果为world! 
还有一个extern "C"就不用说了,用这个可以允许C++程序中调用C的函数!
分享到:
评论

相关推荐

    extern用法详解

    ### extern用法详解 #### 一、引言 在C/C++编程中,`extern`关键字主要用于指示编译器变量或函数的定义位于其他文件中。这对于大型项目的组织非常重要,尤其是在涉及多个源文件的情况下。正确理解和使用`extern`...

    C++ extern用法

    C++ extern 用法详解 C++ 语言中的 extern 关键字是一种重要的语法元素,它可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。以下是对 C++ 中...

    C语言extern使用方法总结.doc

    C语言extern使用方法总结 在C语言中,extern关键字是一个非常重要的概念,它可以用来声明全局变量和函数,但是很多人却不太了解它的使用方法。在本文中,我们将详细介绍extern关键字的使用方法和注意事项。 声明和...

    extern用法详解.doc

    extern 用法详解 extern 是 C 语言中的一个关键字,用于声明变量或函数在其他文件中定义。下面是对 extern 用法的详细解释: 1. 基本解释 extern 可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中...

    C语言中extern用法

    extern用法详解 extern是一个C语言中的关键字,它可以置于变量或者函数前,以标示变量或者函数的定义在别的文件中,提示编译器遇到此变量和函数时在其他模块中寻找其定义。 基本概念 ---- extern的基本用法是将...

    C语言extern使用方法总结[归类].pdf

    C语言extern使用方法总结 C语言中的extern关键字是用来声明全局变量或函数的,然而在实际应用中,extern关键字的使用方法却经常引起混淆,今天我们将对extern关键字的使用方法进行总结。 一、extern关键字的作用 ...

    C语言中extern用法总结

    ### C语言中`extern`关键字的使用总结 在C语言编程中,`extern`关键字用于声明一个变量或函数,表明其定义在其他源文件中。本文将深入探讨`extern`的关键作用及其应用场景,并通过示例代码帮助理解。 #### 一、`...

    C++简单代码示例说明extern用法

    在本篇文章中,我们将通过一个简单的代码示例来深入理解`extern`关键字的作用和用法。 首先,让我们了解`extern`的基本含义。在C++中,当我们在一个源文件(`.cpp`文件)中声明一个全局变量或函数时,它们默认的...

    C项目文件组织规则(extern用法)

    extern在C语言项目文件组织中的用法,非常经典

    iOS extern使用教程

    本教程将深入讲解`extern`的使用方法,以及它在iOS应用程序开发中的作用。 首先,我们要明白`extern`关键字的基本用法。在C/C++语言中,`extern`是用来告知编译器变量或函数是在其他地方定义的。当你在某个文件中...

    extern关键字的作用extern的用法,本文较详细的介绍了extern的用法及注意事项.zip

    下面我们将深入探讨`extern`关键字的作用、用法以及在使用时需要注意的事项。 一、`extern`关键字的作用 1. 引入外部方法:`extern`关键字用于声明一个方法,这个方法的实现并不在当前的C#源代码中,而是存在于...

    深入理解extern用法

    l声明extern关键字的全局变量和函数可以使得它们能够跨文件被访问。 我们一般把所有的全局变量和全局函数的实现都放在一个*.cpp文件里面,然后用一个同名的*.h文件包含所有的函数和变量的声明。如:如果将Demo.cpp写...

    extern c 用法解析

    `extern "C"`的使用主要涉及到跨语言接口或者C++程序与C库的交互。 1. `extern "C"`的含义: - **extern**:在C++中,`extern`关键字用来声明全局变量或函数可以在其他翻译单元(即源文件)中被访问。它不分配存储...

    extern "C"的详细用法+demo

    而C语言不进行名称修饰,因此在C++中使用C库或者C代码时,就需要`extern "C"`来避免名称匹配错误。 `extern "C"`的基本语法如下: ```cpp extern "C" { // 在这里声明的函数和变量将按C的方式处理 void func(); ...

    extern 的用法示例

    本文将深入探讨`extern`的用法,以及如何在不同类之间通过`extern`共享全局变量。我们将以标题和描述中的"extern"用法为例,结合实际的代码示例进行讲解。 首先,我们需要理解全局变量的基本概念。全局变量是在函数...

Global site tag (gtag.js) - Google Analytics