条款1:视C++为一个语言联邦】的更多相关文章

(整理自Effctive C++,转载请注明.整理者:华科小涛@http://www.cnblogs.com/hust-ghtao/) C++的各种能力和特性使它成为一个无可匹敌的工具,但也可能引发某些迷惑:所有“适当用法”似乎都有例外.我们该如何理解这种语言呢?最简单的办法就是将C++视为有相关语言组成的联邦而非单一语言.在它的某个次语言中,各种规则与通例都相对简单.然而从一个次语言移往另一个次语言,守则可能改变. C++主要的次语言有四个: 1 C 所到底C++以C为基础.区块.语句.预处理…
一开始,C++只是 C 加上一些面向对象的特性.C++最初的名称 C with Classes 也反映了这个血缘关系. 但是,现在,当这个语言逐渐成熟,它变得更活跃更无拘束,更大胆冒险,开始接受不同于 C with Classes 的各种观念.特性和编程战略. 今天的 C++ 已经是个多重泛型编程语言,一个同时支持过程形式.面向对象形式.函数形式.泛型形式.元编程形式的语言. 那,我们又该如何理解这样一个语言呢? 最简单的办法是将 C++ 视为一个有相关语言组成的联邦的而非单一语言. 为了理解C…
Effective C++ Chapter 1. 让自己习惯C++(Accustoming Yourself to C++) Item 1. 视C++为一个语言联邦(View C++ as a federation of languages) 将 C++ 视为由四个次语言组成的语言联邦,在某个次语言中,各种守则与通例都倾向于简单.直观易懂.且容易记住.但从一个次语言移往另一个次语言,守则可能改变. C —— C++ 以 C 为基础.区块(blocks).语句(statements).预处理器(p…
1.C++是个多重范型编程语言:面向过程,面向对象,函数编程,泛型形式,元编程形式. 2.C++是一个语言联邦,包括四个次语言: a.C语言,C++以C语言为基础.但C语言有下列局限:没有模版,没有异常,没有过载. b.面向对象C++,包括继承,封装,多态,抽象. c.Template C++,泛型编程,可以生成代码的代码. d.STL,标准库容器,迭代器,算法,方法对象.…
一开始C++定义为:C with Classes. 如今的C++已经是一个多重范型编程语言,可以把C++视为有四个次语言组成的联邦语言. C.C++任然以C为基础.区块.语句.预处理.内置语言类型.数组.指针等.搞笑编程守则映射出C语言的局限:没有模版.没有异常.没有重载. Object-Orited C++.这部分是C with Classes诉求的:class.封装.集成.多态.virtual函数等. Template C++.模版威力强大,带来了崭新的泛型编程,即TMP(模版元编程). S…
C++是门多范式语言,至少包括面向过程,面向对象,泛型,函数式,元变成等. 但谨记,不要随意混合使用各种特性,为自己制定使用原则,针对不同项目.业务. 如: 类C风格编程:没有模板,没有异常,没有重载等. 面向对象:封装,继承,多态等. 模板编程:一般用于底层库的编写,大量使用模板. STL:有自己的原则,有异常. PS:这四个次语言的界限并非定死,可根据自己需要组合.…
四个次语言 C Object-Oriented C++ Template C++ STL…
C++中的sub-languages有如下四种: C Object-Oriented C++:   (classes ,encapsulation(封装),inheritance(继承),polymorphism(多态)) Template C++ :  (泛型编程(generic programming)) The STL:  容器(containers),迭代器(iterators),算法(algorithms)…
C++由四部分组成: 1)C. 2)Object-Oriented C++.classes,封装,多态,动态绑定(virtual函数) 3)Template C++.泛型编程. 4)STL. 对于内置类型而言,传值比传引用有效.对于用户自定义的类型,由于有构造函数和析构函数的存在,所以pass-to-reference-to-const更好.…
1.C语言         区块.语句.预处理器.内置数据类型.数组.指针等内容 2.OC++       类.封装.继承.多态.virtual函数 等 3.Template C++       泛型编程,模板元编程 4.STL      包含容器.算法.迭代器.string可以看做是STL的一部分. 参考资料:http://blog.csdn.net/misskissc/article/details/10063709    C++ STL 容器 迭代器 算法         记住:C++是由…