Effective C++ 01 视C++为一个语言联邦 笔记

    Effective C++第一部分:让自己习惯C++。

    条款01:视C++为一个语言联邦。

 

    C++是一个多重范型编程语言,一个同时支持过程形式,面向对象形式,函数形式,泛型形式,元编程形式的语言。最简单的方法是将C++视为一个由相关语言组成的联邦而非单一语言。在某个次语言中,各种守则与通例都倾向简单,直观易懂,并且容易记住。当你从一个次语言移往另一个次语言,守则可能改变。C++的四个次语言:

 

C。C++仍是以C为基础,区块,语句,预处理器,内置数据类型,数组,指针都来自C。当以C++的C成分工作时,高效编程守则映照出C语言的局限:没有模板,没有异常,没有重载。

 

Object-Oriented C++。这部分是面向对象设计之古典守则在C++上的最直接实施。class(包括构造函数和析构函数),封装(encapsulation),继承(inheritance),多态(polymorphism),virtual函数(动态绑定)等等。

 

Template C++。这是C++的泛型编程部分,也是大多数程序员经验最少的部分。由于template威力强大,带来了崭新的编程范型,即template metaprogramming(TMP,模板元编程)。

 

STL。STL是个template程序库,对容器(containers),迭代器(iterators),算法(algorithms)以及函数对象(function objects)的规约有极佳的紧密配合与协调,然而template及程序库也可以其他方法构建出来。

 

请记住:

C++高效编程守则视情况而变化,取决于你使用C++的哪一部分。

你可能感兴趣的:(C/C++,c++,语言,编程,inheritance,containers,c)