zoukankan      html  css  js  c++  java
  • C++变量的声明和定义

    1、变量的定义:变量的定义用于为变量分配存储控件,还可以为变量指定初始值。在一个程序中,变量有且仅有一个定义。

    2、变量的声明:用于向程序表名变量的类型和名字。程序中变量可以声明多次,但只能定义一次。

    3、两者联系和区别:

      (1)定义也是声明,因为定义变量时我们也想程序表明了它的类型和名字。

      (2)但声明不是定义,可以通过使用extern关键字声明变量而不是定义它。不定义变量的声明包括对象名、对象类型和对象类型前的关键字extern。

      例:

         extern int i;//声明但是不定义

        int i;//声明也定义

        extern声明不是定义,也不分配存储空间,事实上,它只是说明变量定义在程序的其他地方。

      例如:extern double pi = 3.1416;//定义了

         double pi;//重定义,不合法

      注意:在C++语言中,变量必须仅能定义一次,而且在使用变量之前必须定义或声明变量。

    4、为什么需要区分声明和定义:

      C++程序通常由许多文件组成。为了让多个文件访问相同的变量,C++区分了声明和定义。任何在多个文件中使用的变量都需要既有定义又有声明。在这种情况下,在一个文件中定义了变量,在其他使用改变了的文件中则只能包含变量的声明(不能再包含定义,因为变量只能定义一次)。

    5、真正用的时候这种需要被别的文件用的变量,必须在本文件中定义好,比如在文件1中定义extern int i = 0;然后才可以在别的文件中使用,使用方式是:在类体的外部使用extern int i;这样在这个类中就可以使用该外部变量了,再次强调必须先定义好,才能在别的地方通过extern声明使用。

  • 相关阅读:
    UNITY 多个子MESH与贴图的对应关系
    UNITY 优化之带Animator的Go.SetActive耗时问题,在手机上,这个问题似乎并不存在,因为优化了后手机上运行帧率并未明显提升
    发现一个好办法-有问题可以到UNITY论坛搜索
    静态函数造成GC的原因
    关于GC.Collect在不同机器上表现不一致问题
    VULKAN学习资料收集
    Array.Resize(ref arry, size);
    玩游戏消耗精力
    浮点数与定点数问题
    P8 Visible Lattice Points
  • 原文地址:https://www.cnblogs.com/wjq13752525588/p/11497075.html
Copyright © 2011-2022 走看看