牛客C++专项试题笔记——0614
2017-06-14 09:43
155 查看
1、read是unix下的系统函数;fread(fgetc、fopen)才是C的库函数(stdio.h)。
2、C的转义字符:
“\”加数字(8进制数字)以及‘\0’加数字 都表示8进制转义字符;
‘\x’ 表示16进制转义字符;
‘\’加字符表示普通的转义字符(\n 换行等)。
3、if((x=y) && (x != 0)) x +=y是对的。
4、C++中,只有参数个数、类型以及参数是[b]const的引用(指针)可以作为重载判断,返回值类型不可以作为重载判断。(C++Primer P208)[/b]
5、C++中运算符的优先级:*(解引用)和++优先级一样,右结合性。
参考博客:http://blog.csdn.net/nicky_zs/article/details/4053146
6、函数内定义的数组是局部变量,在函数返回后内存被释放,无法通过指针访问:
2、C的转义字符:
“\”加数字(8进制数字)以及‘\0’加数字 都表示8进制转义字符;
‘\x’ 表示16进制转义字符;
‘\’加字符表示普通的转义字符(\n 换行等)。
3、if((x=y) && (x != 0)) x +=y是对的。
4、C++中,只有参数个数、类型以及参数是[b]const的引用(指针)可以作为重载判断,返回值类型不可以作为重载判断。(C++Primer P208)[/b]
5、C++中运算符的优先级:*(解引用)和++优先级一样,右结合性。
参考博客:http://blog.csdn.net/nicky_zs/article/details/4053146
6、函数内定义的数组是局部变量,在函数返回后内存被释放,无法通过指针访问:
int *f() { int a[3] = {1, 2, 3}; return a;}是错误的。
7、exec((vl,v2),(v3,v4),v5,v6)等价于exec(v2,v4,v5,v6)。
8、类的常成员函数的定义:void print()const,在函数形参列表的右括号后面加上const。
9、构造函数的执行次序如下(析构函数相反): 调用基类构造函数,调用顺序按照他们的继承时声明的顺序。 调用内嵌成员对象的构造函数,调用顺序按照他们在类中声明的顺序。 派生类的构造函数体中的内容。
10、构造函数可以重载([b]有参数)不可以声明为虚函数(虚函数是动态绑定,是在构造函数之后);[/b]
而析构函数不可以重载(无参数),有虚函数的情况下必须声明为虚函数。
11、#pragma once避免头文件重复定义,作用类似于#ifndef,#define,#endif。
区别:[b]#pragma once:优点:不会“撞车”,不用考虑宏名;缺点:如果某个头文件有多份拷贝,本方法 不能保证他们不被重复包含,同时不支持跨平台;[/b]
[b] #ifndef:优点:可移植性强;缺点:不同头文件的宏名会“撞车”。[/b]
相关文章推荐
- 2015.1.29试题笔记
- 《SCJP试题1000例》学习笔记1
- 算法笔记_110:第四届蓝桥杯软件类省赛真题(JAVA软件开发高职高专组部分习题)试题解答
- 算法笔记_168:历届试题 矩阵翻硬币(Java)
- 算法笔记_172:历届试题 波动数列(Java)
- 算法笔记_169:历届试题 兰顿蚂蚁(Java)
- 算法笔记_111:第五届蓝桥杯软件类省赛真题(Java本科A组)试题解答
- 算法笔记_121:蓝桥杯第六届省赛(Java语言C组部分习题)试题解答
- 算法笔记_123:蓝桥杯第七届省赛(Java语言B组部分习题)试题解答
- 《SCJP试题1000例》学习笔记2
- 系统分析师上午试题笔记 软件工程二
- 链表 — 试题笔记
- 算法笔记_109:第四届蓝桥杯软件类省赛真题(JAVA软件开发本科B组部分习题)试题解答
- 学习笔记之一:学习中好的试题
- C/C++试题(笔记)
- 2013年金山网络笔记试题
- 系统分析师上午试题笔记 软件工程一
- 算法笔记_112:第五届蓝桥杯软件类省赛真题(Java本科B组)试题解答
- 算法笔记_171:历届试题 小朋友排队(Java)
- 算法笔记_173:历届试题 斐波那契(Java)