标签:c++ effective c++ stl templates oop
书中将C++划分为4个次语言,期望将混乱的C++体系进行简单的梳理,只能说目的达到了,但这么分合适不合适呢?不知道....
(1)C(C++ without class)
初级C++确实是对C的延生,这也涉及到C++是否应该严格兼容C的问题,历史问题不去评判,但这是事实。
(2)面向对象C++(Object-Oriented C++)
涉及到类、封装、继承、多态和虚拟(动态绑定)机制,这也是C++ OOP的核心部分。
(3)泛型编程(template c++)
常接触到的有模板函数和模板类,在STL中大量应用。
(4)STL
作为一个标准模板库,核心有:容器、迭代器、算法和函数对象等,相当有用和高效。
引一下2010年8月号《程序员》刊登的拙文《C++强大背后》最后一段:
C++学习建议:
C++缺点之一,是相对许多语言复杂,而且难学难精。许多人说学习C语言只需一本K&R《C程序设计语言》即可,但C++书籍却是多不胜数。我是从C进入C++,皆是靠阅读自学。在此分享一点学习心得。个人认为,学习C++可分为4个层次:
由于我主要是应用C++,大约只停留于第二、三个层次。然而,C++只是软件开发的一环而已,单凭语言并不能应付业务和工程上的问题。建议读者不要强求几年内“彻底学会C++的知识”,到达第二层左右便从工作实战中汲取经验,有兴趣才慢慢继续学习更高层次的知识。虽然学习C++有难度,但也是相当有趣且有满足感的。
标签:c++ effective c++ stl templates oop
原文地址:http://blog.csdn.net/hustyangju/article/details/41517803