在最近的一次工作面试中,我被问到以下问题:
您认为总结 Scott Meyers 的 Effective C++ 系列的主题/单词是什么?
你会怎么回答这个问题?
在最近的一次工作面试中,我被问到以下问题:
您认为总结 Scott Meyers 的 Effective C++ 系列的主题/单词是什么?
你会怎么回答这个问题?
一言以蔽之Advice
我的回答是“我不确定,我没有读过那本书就学会了 C++”。
两个较早的版本收集了对从 C 转换到 C++ 的人特别有用的建议。使用new
/delete
代替malloc()
/free()
和 OOP 在 1991 年是全新的。
第 3 版更针对从其他语言(Java、C# 等)转换到 C++ 的人。它提供了关于模式、模板、异常安全、更丰富的标准库以及人们在 1991 年没有想到的许多其他主题的建议。
基本上,Scott Meyers 的目标一直是写“最好的第二本 C++ 书”——不是教你这门语言,而是成为一名真正的专业人士。他想列出“练习 C++ 的 50 条最重要的建议”。
哦,还有一些我们不应该忘记的事情:他希望它(并成功地做到了)成为一本有趣的技术书籍。
虽然在面试中问了一个很奇怪的问题(考虑到你的候选人可能没有读过这么好的书),但我想说 Effective C++ 的主题是走半专家 C++ 程序员的道路并调整他/她在成为专家的道路上的思维方式(尤其是对 C++ 的内部)。
我学到了很多关于参考文献的自我检查(第 71 页,第 17 项)。更好的内存管理。更喜欢 new/delete 与 malloc 和 free (这很明显,但他的推理非常清楚)。另一个不错的是第 123 页的第 29 项,避免将“句柄”返回给内部数据。
这不是一本简单的读物,也绝对不是一本初学者的书。对于希望成为更好的 C++ 程序员的 C++ 程序员来说,这是下一个飞跃。
这是一本非常好的书,虽然有点过时,但它是成为精通 C++ 程序员的最佳书籍之一。直到今天我仍然阅读了其中的一部分,而且我绝对不是 C++ 专家。这是一种爱好。
为了给面试官留下深刻印象,你提到虽然你喜欢 Effective C++,但面试官应该看看More Effective C++。解释这本书的一些优点,并询问他/她是否也读过这本书,因为他们已经阅读了有效的 C++。那应该难倒笨蛋:)。
C++ 是一种极其复杂的语言,有很多技巧、技巧、习语和奇怪的结构,你必须熟记于心,而不是通过良好的语言设计来强制执行?
不过,除了 MSFT,可能不会让你在任何地方得到这份工作!
别
{等等身体太短等等}
C++ 给了你足够的绳索让你上吊。但是,如果您遵循这些准则,您可以使用它编写可靠的代码。
编写更好的 C++ 的指南。
主(抄袭)主题:“权力越大,责任越大”
如何编写有效的 C++?