const,static和指针问题
const 和 static区别
const的作用 | 1.阻止防止变量修改(使用const后变量通常先初始化,因为以后不能改变了) 2.可以修饰指针为const或指向数据为const,或都是const 3.在函数声明中可以修饰形参表明一个输入参数在函数内部不能修改 4.对于类的成员函数制定const则表明其是一个常函数,不能修改类的成员变量 5.对于类的成员函数有时必须制定返值为回const以使返回值不为左值 |
---|---|
static的作用 限制变量的作用域 设置变量的存储域 | 1.函数体内static变量作用生命周期和程序同等,可当函数体内全局变量使用. 2.模块内的static全局变量可以被模块内所有模块访问,但不能被模块外函数访问. 3.类的static成员变量属于整个类拥有,对类的所有拷贝只有一份拷贝. 4.类的static成员函数不接受this指针因而只能访问类的static成员变量. 5.一个被声明为静态的函数只可被这一模块内的其它函数调用。 这个函数被限制在声明它的模块的本地范围内使用。 |
++i 和 i++( 优先用 i++)
自增 | 加在前则先+后=, 反之先=后+. | int i(0), j(0); |
---|---|---|
++i | a = ++i; 等价于 i = i + 1; a = i; | j = ++i; 前自增 |
i++ | a = i++; 等价于 a = i; i = i + 1; | j = i++; 后自增 |
待编辑中 …