您的位置:首页 > 编程语言 > C语言/C++

《C++ Primer第四版》学习笔记(五)变量和基本类型 之 变量

2014-05-21 08:57 288 查看

变量

写在前面:
C++是一门静态类型语言,在编译时会作类型检查。
1. 对象的类型限制了可以执行的操作
2. 操作是否合法是在编译时检查的
3. 静态类型检查使得编译器必须能识别程序中的每个实体的类型

(一)什么是变量

1. 变量提供了程序可以操作的有名字的存储区,C++中的每一个变量都有特定的类型,该类型决定了变量的内存大小和布局、能够存储于该内存中的值的取值范围以及可应用在该变量上的操作集。我们称之为“变量”或者对象。
注:简单的说,变量就是一个内存区域的别名。
2. 变量是左值,可以出现在表达式的左边或者右边
3. 对象即是内存中具有类型的区域

(二)变量名(标识符identifier)

1. 可以由字母、数字和下划线组成。变量名必须以字母或者下划线开头,区分大小写
2. C++关键字有63个,还保留了一组标识符用于标准库11个
3. 命名习惯:小写字母、名字有意义、驼峰或者下划线组织多个词语

(三)定义对象

1. 两种初始化方式:
第一种: 直接初始化(更灵活、效率高):
int ival(1024);
第二种: 复制初始化
int ival = 1024;
2. 初始化不是赋值。
初始化:创建变量并给它赋初值
赋值:擦出对象的当前值并用新值代替
3. 类的初始化方式有很多种方式,根据构造函数来定
4. 初始化多个变量
#include<iostream>
#include<string>
int main()
{
     double salary = 99.99,
          wage(salary + 0.1);     //这样定义并且初始化,也是可以的
     int interval,
          month = 8, day = 7, year = 1955;
     std::string title("C++ Program"),
          publisher = "A-W";
     std::cout << wage << std::endl;
     return 0;
}


(四)变量初始化原则

当没有初始化变量的时候,系统会帮助我们处理,但不是全部。
1. 内置类型
取决于位置,在函数体外定义的,初始化为0,在函数体里 不进行自动初始化。
2. 类类型,依赖构造函数

(五)声明和定义

问:为什么区分声明和定义?
答:因为c++程序通常由多个文件组成,为了让多个文件访问相同的内容。
1. 定义:为变量分配存储空间,还可以为变量指定初始值
声明:向程序表明变量的类型和名字,不分配存储空间。
定义也是声明:当我们定义变量时候我们声明了它的类型和名字,除非用extern。
extern int i; //只是声明
int i; //既是声明又是定义
2. 程序变量可以声明多次,但是只可以定义一次,使用变量之前,必须声明或者定义变量。

(六)作用域

1. 用来区分相同名字,可以在不同作用域中分别相同
2. 分为:全局、局部、语句

注:在变量使用时再定义是个好习惯。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: