首页 > 代码库 > c++ 概念及学习/c++ concept&learning(一)
c++ 概念及学习/c++ concept&learning(一)
学习过计算机组成原理就会知道,处理器会从主存中取得指令,然后进行解释执行。而他们的交流方式是以二进制方式进行的,也就是他们只能识别1和0
;其实计算机是不知道1和0的,现在的实现方式是以高电压与低电压来代表1/0。CPU会从主存中取出指令进行执行。这样整个计算机就可以运行起来。
计算机作为为人服务的机器,必须接受人的控制。所以最初的“程序”是一种打孔的卡片。读卡机将“程序”读入,CPU进入执行。可想而知,这种“
程序”是物理的,假如上百行的代码,可能需要N公斤重的“卡片”。所以为了提高程序开发效率,和简易程序,就发明了汇编,把汇编编写的程序,进
行翻译,生成一个包括机器码的可执行文件,比如微软的8086汇编,80386汇编。
后来有了微软的PC,人们对计算机的需求急剧增加。汇编的开发效率等方面已经严重的不要满足生产需要,随之开发了对程序员友好的C语言,同时期还有很多
不同风格的语言,这里捡主要的来说。但c语言的开发效率和执行效率,很好的满足了当时的需要。在很长一段时间里,许多智慧的程序员用C语言开发了很多实用
并且强大的程序。以C的功力,现在很多系统都是用C作为底层构造语言,比如python的库就是用C写的。开发语言说到底是为程序员来服务的,C的学习和掌控
难度,对于初级乃至使用C几年的程序员来说,都 极易说出使系统崩溃的BUG,而且C没有面向对象开发范式的支持,对于面向对象的开发形式来说无能为力。
Bjarne Stroustrup在smalltalk的基础上对C进行扩展, 增加了面向对象的支持,从而拉开了C++的发展大幕,而后的C++对泛型的支持,使整个开发语言界面都深受其影响。
同期的JAVA,C#对编程范式的支持 ,也无出其右。不过,现在动态编程的发展,是C++所不具备的能力。正因为C++支持绝在多数主流的开发范式,所以学习
C++是一件比较不容易的事情。
学习C++,要掌握三种编程范式:一:过程式 二:面向对象/基于对象 三:泛型编程;
在这之前要掌握C++的语言细节及概念。
一:基本类型 int bool 等等 二:流程控制 if else while 等 三:类 class 四:泛型
这些语言实现与编程范式,共同构成了C++语言的主体部分。