第5章 C++与STL入门
学习目标
在前4章中介绍了C语言的主要内容,已经足以应付许多算法竞赛的题目了。然而,“能写”并不代表“好写”,有些题目虽然可以用C语言写出来,但是用C++写起来往往会更快,而且更不容易出错,所以在讨论算法之前,有必要对C++进行一番讲解。
本章采用“实用主义”的写法,并不会对所有内容加以解释,但是这并不影响读者“依葫芦画瓢”。不过有时读者还是希望能更细致、准确地学习到相关知识。推荐读者在手边放一本C++的参考读物,如C++之父Bjarne Stroustrup的经典著作《C++程序设计语言》。尽管如此,本章的作用也不容忽视:C++是一门庞大的语言,大多数语言特性和库函数在算法竞赛中都是用不到(或者可以避开)的。而且算法竞赛有它自身的特点,即使对于资深C++程序员来说,如果缺乏算法竞赛的经验,也很难总结出一套适用于算法竞赛的知识点和实践指南。因此,即使你已经很熟悉C++语言,但笔者仍建议花一些时间浏览本章的内容,相信会有新的收获。