再学C++ Primer(5)-表达式
来源:互联网 发布:stc单片机价格表 编辑:程序博客网 时间:2024/05/17 06:10
在求模或取余中如果有一个操作数是负数,这两种操作的结果取决于机器。
若仅靠左操作数的值无法确定该逻辑表达式的结果,才会求解其右操作数的值-短路求值。
关系操作符具有左结合性,如if(i<j<k),即将k与整数1或0做比较。
移位操作的右操作数不可以是负数,而且必须是严格小于左操作数位数的值。
bitset的用法:
作用:方便地管理一系列的bit位而不用程序员自己来写代码。
初始化方法:
bitset<N>varm (M)
其中varm为变量名。
N表示该类型在内存中占的位数,是二进制。
M表示变量varm的初始值
实例:
#include <iostream>
#include <bitset>
using namespace std;
int main()
{
bitset<3> bs(7);
cout<<"bs[0] is "<<bs[0]<<endl;
cout<<"bs[1] is "<<bs[1]<<endl;
cout<<"bs[2] is "<<bs[2]<<endl;
return 0;
}
说明:声明一个3位bitset型变量,初始化为7,二进制码为111,输出为1 1 1.
好处:更直接更易阅读和书写,正确使用的可能性更高,适合低级直接位操作。
条件操作符优先级相当低,使用时应当注意使用圆括号。
删除指针后,改指针变成悬垂指针,往往导致错误,应立即将指针置为0,这样就非常清楚地表明指针不再指向任何对象。
内存泄漏的一个原因:删除指向动态分配内存的指针失败,因为无法将该块内存返回给自由存储区。
const动态对象也可以使用delete来删除。
发生隐式类型转换的情况(可能会发生精度损失)
1)在混合类型的表达式中,其操作数被转换成相同的类型;
2)用作条件的表达式被转换为bool类型;
3)用一表达式初始化某个变量,或将一表达式赋值给某个变量,则该表达式被转换为该变量的类型。
算数转换:在执行算数操作之前,将操作符的操作数转换为同一类型,并使表达式也具有相同的类型。
强烈建议程序员避免使用强制类型转换。
若仅靠左操作数的值无法确定该逻辑表达式的结果,才会求解其右操作数的值-短路求值。
关系操作符具有左结合性,如if(i<j<k),即将k与整数1或0做比较。
移位操作的右操作数不可以是负数,而且必须是严格小于左操作数位数的值。
bitset的用法:
作用:方便地管理一系列的bit位而不用程序员自己来写代码。
初始化方法:
bitset<N>varm (M)
其中varm为变量名。
N表示该类型在内存中占的位数,是二进制。
M表示变量varm的初始值
实例:
#include <iostream>
#include <bitset>
using namespace std;
int main()
{
bitset<3> bs(7);
cout<<"bs[0] is "<<bs[0]<<endl;
cout<<"bs[1] is "<<bs[1]<<endl;
cout<<"bs[2] is "<<bs[2]<<endl;
return 0;
}
说明:声明一个3位bitset型变量,初始化为7,二进制码为111,输出为1 1 1.
好处:更直接更易阅读和书写,正确使用的可能性更高,适合低级直接位操作。
条件操作符优先级相当低,使用时应当注意使用圆括号。
删除指针后,改指针变成悬垂指针,往往导致错误,应立即将指针置为0,这样就非常清楚地表明指针不再指向任何对象。
内存泄漏的一个原因:删除指向动态分配内存的指针失败,因为无法将该块内存返回给自由存储区。
const动态对象也可以使用delete来删除。
发生隐式类型转换的情况(可能会发生精度损失)
1)在混合类型的表达式中,其操作数被转换成相同的类型;
2)用作条件的表达式被转换为bool类型;
3)用一表达式初始化某个变量,或将一表达式赋值给某个变量,则该表达式被转换为该变量的类型。
算数转换:在执行算数操作之前,将操作符的操作数转换为同一类型,并使表达式也具有相同的类型。
强烈建议程序员避免使用强制类型转换。
- 再学C++ Primer(5)-表达式
- C++primer(七)表达式
- 【重学《C++Primer第四版》】第五章、表达式
- 开始学C++--------------C++ primer(序)
- 重学c++primer(1)
- 重学c++primer(2)
- 重学c++primer(6)
- 《C++Primer 5e》学习笔记(3):表达式
- C++Primer学习笔记5 表达式
- c++primer学习笔记(5.0)表达式
- new 和 delete 表达式(c++primer)
- 《C++Primer》读书笔记(四)表达式
- 《C++primer》 表达式 语句
- C++Primer 表达式
- c++Primer,五,表达式
- c++primer要点-表达式
- C++Primer----表达式
- 跟随c++primer学c++(十一、十二章)
- UIKeyboardTypeNumberPad和丢失的return键
- Creating a Flex Mashup on Force.com
- mysqlbinlog 与binlog要版本一致
- JDBC学习笔记
- MFC控件中字体的设置
- 再学C++ Primer(5)-表达式
- 电商(一)
- JSP学习笔记
- Servlet学习笔记
- Spring学习笔记
- Struts学习笔记
- EJB学习笔记
- 第三周实验报告 任务四
- POJ 2388 水题