C++ Primer学习笔记(三)—— 重新理解声明和定义

    变量的定义(definition)用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且只有一个定义。

    声明(declaration)用于向程序表明变量的类型和名字。定义也是声明:当定义变量时我们声明了它的类型和名字。可以通过使用extern关键字声明变量名而不定义它。不定义变量的声明包括对象名、对象类型和对象类型前的关键字extern:

    extern int i;  // declares but does not define i

    int i;            // declares and defines i

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

    补充:从这个角度说,类里面的成员变量都只是声明而非定义!

原文地址:https://www.cnblogs.com/ppffs/p/3245329.html