我在8年多的时间里没有接触过C ++。我最近不得不修复一些C ++代码,虽然我仍然可以编码,但我觉得我不再属于C ++程序员的阵营。我不知道任何库,没有注意新的语言功能/改进/最佳实践。
Qt Creator和Qt似乎是我现在需要的一个很好的工具集,因为我主要对跨平台开发感兴趣。
对于像我这样的人来说,在最短的时间内快速重新学习C ++和最佳实践会有什么好的资源?
在此期间,我一直在做大多数java和普通的lisp,与C,flex,Scala和Haskell进行了短暂的跨步。
答案 0 :(得分:14)
阅读:
这些是关于C ++的参考书,它们恢复了所有关于C ++的现代有效实践,哲学和知识(没有进入元编程的东西)。
然后,如果你想走得更远,请阅读:
关于图书馆:首先了解STL并学会使用Boost作为“标准”STL扩展。
答案 1 :(得分:6)
了解S.tandard T.emplate L.ibrary。
如果您真的处于最前沿,请了解提升。
阅读scott meyers的书“有效的c ++”和“有效的STL”。
阅读“C++ faq lite”。
(不按此顺序)
答案 2 :(得分:2)
如果您正在进行GUI开发,请使用Qt。这是最好的,价格合适。它偏离了硬标准;但并非没有理由,即使如此,它也会在适当的时候尝试使用类似的编码风格。
如果您更喜欢CLI或服务器进程,Qt仍然可以提供帮助;但它没有那么大的优势。使用STL和(特别是)Boost会更有成效。
答案 3 :(得分:2)
看看A.Koenig和B.Moo的 Accelerated C++ 。
引用的其他书籍都是好书,但它们需要你花很多时间来阅读它们。 AC ++教授现代C ++(与历史C ++相反 - 它与模板魔法无关)。
来自B.Stroustrup的最新着作, Programming -- Principles and Practice Using C++ ,似乎(我还没读过)也很有趣。
答案 4 :(得分:1)
首先熟悉指针,引用等。
然后我会坚持使用Qt。 Qt的文档规则和IIRC,Qt的容器比STL更高效。事实上,Qt GUI的代码更加优雅,这也增加了Qt的吸引力。 再加上Qt的文档还包含许多简单和一些相对高级的代码示例,您可以使用它们,并且您应该立即再次加速。
知道/使用STL / Boost不会有什么坏处。但是(远)远离GTK。
答案 5 :(得分:1)
代码然后再编码!
尝试进行混合从书本中获取的技巧的项目。正如其他帖子中提到的那样,有很多关于C ++编程的好书。将这些书籍中的设计模式和技术应用到真实的编码环境中,可以让你快速回到正轨。
此外,只要你为经验编码,就不要害怕尝试不同的库。 Multitude很好,因为它可以帮助您了解不同库的构建方式,并帮助您找到以后要用于实际项目的库。