《C和C++程序员面试秘笈》中存在的错误

最近在复习C++面试的考点,所以购买了《C和C++程序员面试秘笈》这本书(人民邮电出版社2014.3 ISBN:978-7-115-34113-6)。

书整体上是非常不错的,知识点覆盖比较全面,很符合我的需求。美中不足的是书中的错误有点多。阅读的过程中自己做了一个总结,现在贴上来供大家参考。

总结的形式比较简单,仅供参考。同时限于本人的水平,总结中可能存在一些错误,欢迎指正。

因为我只选择性的看了第1、2、3、5、6、7章(全文共12章),所以本文只列出了这几个章节中存在的错误。

页码面试题编号存在的错误
P15面试题11<>只会检查预定义目录,不是首先检查预定义的目录
P15面试题12Ctrl+C时,不会调用atexit注册的函数,linux 的手册中显示只有normal termination才会调用atexit
P67面试题17应该第14,15,16编译错误,13行运行时错误
P71面试题21第7行后,str[0]指向的是to后面的’\0’,而不是Nanjing后面
P85面试题32malloc与calloc不是一块与n块的区别,calloc分配的还是一块,只是大小为n*size。本质上没什么区别,相当于malloc的大小为n*sizeof(type)
P150面试题5应该是将&&替换为&
P151面试题7运行时间类型信息(RTTI)翻译错误,这里应该为运行时类型信息(RTTI)
P152面试题8应该为编译器将为你计算常数表达式的值,预处理器只进行文本替换,没有计算。常数表达式的计算是在编译阶段进行的(生成汇编代码时)
P155面试题13和P25面试题10重复了
P171面试题10第25行在函数体内调用父类构造函数是合法的,但是作用仅仅是创建一个A对象,所以B的构造函数会自动调用父类A的无参构造函数,如果A没有无参构造函数,才会编译出错。
P173面试题12C选项是错误的,静态成员一样受到private控制符的作用
P182面试题20应该为析构函数的执行顺序与构造函数相反
P195面试题28拷贝构造函数的传入参数必须为const B &b
P199面试题30拷贝构造函数的传入参数必须为const
P204面试题32C++编译器处理后包含了原函数名,函数参数类型。不是参数数量,也没有返回类型信息,返回值是没有重载的
P205面试题34翻译错误,应该为重写(overriding) 重载(overloading)
P205面试题34只有虚函数能够被覆写(C++没有抽象方法这么一说,也没有虚方法这么一说,作者可能是想说抽象类的方法吧,抽象类的方法也属于虚函数)
P228面试题7应该为 class Child1 : public Parent 与 class Child2 : public Parent
P229面试题7文字错误,应该为Parent类的vtbl: Parent::foo1()的地址,Parent::foo2()的地址 (原文为foo1())
P235面试题11(1)(2)应该选D,因为都是一个指针的大小,这个是和平台相关的,在64bit机器上,结果是8。
P242面试题15第(2)个应该为 任何虚拟基类的构造函数按照他们被继承的顺序构造。
P252扩展知识:虚函数表这里感觉标题字号弄错了,这个让人感觉很像是面试题24的子项目。
  • 9
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值