5.5 自增和自减操作符
因为前置操作返回加1后的值,所以返回对象本身,这是左值。而后置操作返回的则是右值。
只有在必要时才使用后置操作符。
int i, j, k = 0, m = 0;
i = k++; //0
j = ++m; //1
cout << i << " " << j << endl;
5.6 箭头操作符
C++语言为包含点操作符和解引用操作符的表达式提供了一个同义词:箭头操作符(->).点操作符用于获取类类型对象的成员。
解引用的优先级低于点操作符。
C++为在点操作符后使用的解引用操作定义了一个同义词:箭头操作符(->).
string i = "123456";
string *j = &i;
cout << j->length() << endl;
5.7 条件操作符
条件运算符是C++中唯一的三元操作符。
string i ;
i = false ? "123":"4567";
cout << i << endl;
5.8 sizeof操作符
sizeof操作符的作用是返回一个对象或类型名的长度,返回值的类型为size_t,长度的单位是字节。
string i = "123";
cout << sizeof(i) << endl; //32
sizeof的结果部分地依赖所涉及的类型:
- 对char类型或值为char类型的表达式做sizeof操作保证得1.
- 对引用类型做sizeof操作将返回存放此引用类型对象所需的内存空间的大小
- 对指针做sizeof操作将返回存放指针所需的内存大小;注意,如果要获取该指针所指向对象的大小,则必须对该指针进行解引用。
- 对数组做sizeof操作等效于将其元素类型做sizeof操作的结果乘上数组元素的个数。
nothing important