选择题错题总结
4月19日
4月20日
4月22日
- 未解决(上)
A,B,C三个选项分贝对应了拷贝构造函数的三个调用时机
第一种:一个对象需要另一个对象初始化
Test t2(t1);//形式1 Test t2=t1;//形式2第二种:当函数以值返回结束时,将会在返回前临时搞一个中间变量temp,赋值给它,然后自己析构自己的局部变量
class Test {Test test(){Test t;return t;//值返回}}第三种:函数传参如果采用值传递将会引发依次拷贝构造,所以为了效率形参一般是const 引用
class Test {Test(const Test& t);//拷贝构造 }- 未解决(上)
4月23日
- 暂未解决(上)
对于A选项两个方法构成隐藏,但是它是父类的指针,故会调用父类的方法
D选项由于class的默认访问权限是private,故无法访问
4月24日
4月26日:
4月27日
4月28日
4月29日:
5月7日
5月8日
c语言函数参数的入栈顺序为由右向左。切记 mark下。
宏定义是一个很看重括号的东西
1.#define f(x) x*x 这里f(x+y) 就会被翻译成x+y*x+y 为什么,因为你没有添加括号啊宏定义只是简单的替换不会替你加括号
2.#define f(x) (x)*(x) 这里f(x+y) 就会翻译成(x+y)*(x+y) 就是这么回事
回到题上,上述式子等价为 x/=y+z*y+z/y+z*y+z,再加上/=优先级最低,所以x/=3+6+2/3+6+2 所以x=0
5月10日
系统支持的最大内存只与硬件有关,即地址线的数目。32位就是有32根地址线,那么它的寻址能力就是2的32次方,64位就是有64根地址线,寻址能力就是2的64次方。当然,这都是理论值,64位实际最大支持128G
5月11日
内存是分成很多个页来管理的,1000x1000的数组相当的大,要用很多页来存储,假设一个页占的内存大小为,1000×4字节=4000字节,那么共需要1000页。而数组存储是先存储按照一行一行来存储数据的,所以,同一行的在同一页,不同行的在不同页。 ,ABC,每存一个数,就得换一个页,不停的查询页表找地址,因而效率贼低。
5月13日
- 对于B是这样判断的:
- 对于D其实说过:入栈顺讯从右向左,所应该是5,4
5月14日
总结
- 上一篇: 面试题6:从尾巴开始打印链表
- 下一篇: 【README】回溯算法基本框架