zoukankan      html  css  js  c++  java
  • 关于extern的用法

    extern表示该变量或者函数时在另一个地方定义了。

    在C++编程中,如果将程序分为多个文件,则需要有在文件间共享代码的方法,这时如果一个变量或者函数需要在多个文件中使用,则可以使用extern来声明该变量或者函数。声明(declaration)使得名字为程序所知,一个文件如果想使用别处定义的名字则必须包含对那个名字的声明,而定义(definition)负责创建与名字关联的实体。变量声明规定了变量的类型和名字,在这一点和定义与之相同。但是除此之外,定义还申请了存储空间,也可能会为变量赋一个初始值。

    extern int i;//仅仅是声明了整型变量i

    int i;//声明并且定义了整型变量i

    extern int i = 0;//定义了整型变量i,并且赋值为0,等价于int i = 0;

    :在函数内部,如果试图初始化一个由extern关键字标记的变量,将引发错误。

    一般使用extern的过程如下:

    这里如果我们需要在a.cpp中使用b.cpp中定义的变量i,则可以按如下操作:

    1.在b.cpp中给出该变量的定义, int i;

    2.在b.h中对该变量进行声明,在变量前加extern int i;

    3.在a.cpp中声明该变量,extern int i;

    这时如果我们再a.cpp中对该变量赋值为123,那么在b.cpp中可以得到该变量等于123.

    对于extern的用法,具体还是要看实际中需要该变量做什么,这里只是对extern做了简单的介绍。

  • 相关阅读:
    【leetcode】7. 反转整数
    【leetcode】496. 下一个更大元素 I
    【leetcode】389. 找不同
    Linux驱动模型解析bus之platform bus
    shell 和进程
    递归调用在循环体内: 把循环展开, 这种情况是先循环再递归
    javascript函数柯里化以及柯里化带来的好处
    Maven测试篇
    关于ECharts Java类库的一个jquery插件
    javascript原型链继承
  • 原文地址:https://www.cnblogs.com/pengjun-shanghai/p/4892454.html
Copyright © 2011-2022 走看看