zoukankan      html  css  js  c++  java
  • c++多个源文件共用一个全局变量(extern的用法)

     例子:

      头文件:state.h    源文件:state.cpp       

      其它源文件:t1.cpp   t2.cpp  t3.cpp,  这些源文件都包含头文件state.h。

    需要定义一个全局变量供这些源文件中使用:方法如下

      1、在 state.h声明全局变量: extern int a;

      2、在state.cpp中定义该全局变量:int a = 10;

    这样其它源文件就可以使用该变量啦

    这里需要的是“声明”,不是“定义”!根据C++标准的规定,一个变量声明必须同时满足两个条件,否则就是定义:  
      (1)声明必须使用extern关键字;(2)不能给变量赋初值 

    extern   int   a;   //声明 
    
    int   a;   //定义
    
    int   a   =   0; //定义
    
    extern   int   a   =0;   //定义

      头文件中应使用extern 关键字声明全局变量(不定义),如果这个变量有多个文件用到,可以新建一个cpp,在其中定义,把这个cpp加入工程即可。头文件请不要定义任何变量,那是非常业余的行为…

      一般在头文件中声明,用extern, 在cpp中定义。 如果在头文件中定义,如果这个头文件被多个cpp引用,会造成重复定义的链接错误

    それでも私の大好きな人
  • 相关阅读:
    react-redux简单使用
    jQuery——Js与jQuery的相互转换
    移除HTML5 input在type="number"时的上下小箭头
    echarts 5.0 地图
    Vue echarts 设置初始化默认高亮
    echarts 渐变色
    隐藏滚动条css
    echarts 柱状图--圆角
    echarts 气泡图--option
    Vue 圆柱体组件
  • 原文地址:https://www.cnblogs.com/codingmengmeng/p/7355236.html
Copyright © 2011-2022 走看看