一、什么是变量
变量,即没有固定的值,可以变化的数,它有名字,有类型,有内存等。
二、变量名
即变量的标识符,可以有字母、数字、下划线组成。变量名必须以字母或下划线开头。
三、变量的命名习惯
命名法 | 例 | 说明 |
---|---|---|
驼峰命名法 | myName | 除第一个单词之外,其他单词首字母大写 |
下划线命名法 | my_name | 名称中的每一个逻辑断点都用一个下划线来标记,C语言中比较常用 |
匈牙利命名法 | m_pMyName | 变量名=属性+类型+对象描述 |
四、变量的初始化
C++中初始化不是赋值,初始化是创建变量并给它赋初始值,而赋值时擦除对象的当前值并用新值代替。
初始化方式 | 例 | 说明 |
---|---|---|
复制初始化 | std::string myName = Jack; | 对内置类型来说,复制初始化和直接初始化几乎没有差别 |
直接初始化 | std::string myName(Jack); | 直接初始化语法更灵活且效率更高,对类类型的对象来说,有些初始化仅能用直接初始化完成 |
警告:
使用未初始化的变量容易引发未知错误,且错误难以发现,建议每个内置类型的对象都要初始化。虽然这样做并不总是必须的,但是会更加容易和安全。
五、变量的定义
变量的定义用于为变量分配存储空间,还可以为变量指定初始值。在一个程序中,变量有且仅有一个定义。
六、变量的声明
声明用于向程序表明变量的类型和名字,不分配存储空间。定义也是声明,当定义变量时我们声明了它的类型和名字。可以通过使用extern关键字声明变量而不定义它。
七、变量的作用域
定义区域 | 说明 |
---|---|
函数外部 | 全局作用域 |
函数内 | 局部作用域 |
语句内 | 语句作用域 |
八、引用
例 | 说明 |
---|---|
int i =0;int &value = i; | 引用就是变量的另一个名字,主要用作函数的形式参数。作用在引用上的所有操作事实上都是作用在该引用绑定的对象上。 |