C++语言中的一些常用技巧
2018-03-08 23:54
260 查看
1、要将一个字母大小写变换一下,可以用这种方法:char s
s^=32; //s^=(1<<5)也可以2、创建set并初始化,利用set判断某个元素是否在set中。set类是有序的。set<char> setJ(J.begin(),J.end());
for(char s:S)
if(setJ.count(s)) res++;3、double变量不能用==判断是否相等,因为精度问题
4、右移操作符本身不修改变量值,会返回一个移位后的值:a=a>>15、P1为int指针,P2为int值。int* p1,p2;6、类传递一般用const 引用。
7、内联函数适合用于小且非递归的函数,且内联声明和定义都需要在开头加上inline。
8、将表达式传递给函数引用参数会报错。
9、单精度浮点数用23位来储存尾数,小数点前还有一位隐藏的1,所以一共可以表示10^7<2^24<10^8,所以单精度浮点数的有效位数为7,如果考虑第7位为四舍五入问题,则最少有效位数为6位;同样双精度浮点数的尾数用52位存储,即有效位数为16位,考虑四舍五入则为15位。
10、下面程序中的v为m的引用:hanshu((m)){ v=m; }11、m=!!n :如果n>0,m=1;如果n==0,m=0!
12、一个数字与非它自身结果为0!
13、一个指针指向字符串,当字符串为空则不代表指针为NULL,这两种情况需要分别考虑!
14、像下面这么用不行,因为s只是一个复制,并不会改变容器中字符串的值:for(string s:rightRes)
s=curStr+s;下面这么用可以:for(string& s:rightRes)
s=curStr+s;
s^=32; //s^=(1<<5)也可以2、创建set并初始化,利用set判断某个元素是否在set中。set类是有序的。set<char> setJ(J.begin(),J.end());
for(char s:S)
if(setJ.count(s)) res++;3、double变量不能用==判断是否相等,因为精度问题
4、右移操作符本身不修改变量值,会返回一个移位后的值:a=a>>15、P1为int指针,P2为int值。int* p1,p2;6、类传递一般用const 引用。
7、内联函数适合用于小且非递归的函数,且内联声明和定义都需要在开头加上inline。
8、将表达式传递给函数引用参数会报错。
9、单精度浮点数用23位来储存尾数,小数点前还有一位隐藏的1,所以一共可以表示10^7<2^24<10^8,所以单精度浮点数的有效位数为7,如果考虑第7位为四舍五入问题,则最少有效位数为6位;同样双精度浮点数的尾数用52位存储,即有效位数为16位,考虑四舍五入则为15位。
10、下面程序中的v为m的引用:hanshu((m)){ v=m; }11、m=!!n :如果n>0,m=1;如果n==0,m=0!
12、一个数字与非它自身结果为0!
13、一个指针指向字符串,当字符串为空则不代表指针为NULL,这两种情况需要分别考虑!
14、像下面这么用不行,因为s只是一个复制,并不会改变容器中字符串的值:for(string s:rightRes)
s=curStr+s;下面这么用可以:for(string& s:rightRes)
s=curStr+s;
相关文章推荐
- 一些常用的基础代码和技巧
- Eclipse最常用的一些快捷键技巧
- <android> 常用但容易忘记的一些代码和技巧 汇总(个人笔记)
- VC6.0对话框程序一些常用的技巧
- Python爬虫:一些常用的爬虫技巧总结
- linux下常用的一些技巧收集
- PowerDesigner的一些常用设置及技巧(转帖)
- 收藏整理的一些Python常用方法和技巧
- 一些常用的python爬虫技巧总结【文末彩蛋福利】
- 讲解WordPress开发中一些常用的debug技巧
- 谈谈正则表达式常用的一些技巧
- jdbc编程中的一些常用的技巧[总结]
- C语言系列(三):最近重拾C语言的想法,谈到C中易错点,难点;以及开源代码中C语言的一些常用技巧,以及如何利用define、typedef、const等写健壮的C程序
- 常用的一些JS技巧
- 敲代码时的一些常用技巧
- 前端开发中一些常用技巧总结
- ExtJs Grid 常用的一些技巧
- 整理搜集一些常用的编程IT技巧学习平台
- 记录一些开发中常用的方法和技巧
- C++语言中的一些编程技巧