变量提供一个具名的、可供程序操作的存储空间。
变量都有其数据类型,其数据类型决定着变量所占内存空间的大小、布局方式、该空间存储的值的范围、变量能参与的运算。
对象是指一块能存储数据并具有某种类型的内存空间。
一般情况下使用对象这个词,不严格区分是类还是内置类型,也不区分是否命名或是否只读。
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
变量定义、声明、初始化:
初始化和赋值是两个完全不同的操作。
初始化是创建变量时赋予一个初始值,赋值是把对象的当前值擦除,以一个新值来替代。
初始化方式:
以整数为例显示初始化
int a = 0, a(0); //两种初始化等同
int a{0}, a = {0}; //列表初始化:作为C++11新标准的一部分,花括号来初始化变量得到了应用, 在C++11之前,列表初始化尽在某些受限的场合下才能使用。
默认初始化:定义变量时没有指定初始值。
内置类型变量默认初始值取决于变量位置:函数之外初始化为0, 函数之内不初始化。
类类型变量是否能默认初始以及默认初始值取决于类型。
=================================================================================================================
声明和定义的关系:
声明规定了变量的类型和名字,定义申请存储空间。
想声明而非定义一个变量,添加extern关键字,extern声明变量并初始化时即变成定义。
定义一次,声明可多次。