首先简要介绍一下机器语言与汇编语言。由于计算机底层由逻辑电路组成,只能识别由0和1组成的机器语言。这种语言非常不方便,也只有少部分精通机器语言的编程专家能够熟练使用。
为了简化人们编写程序的方式,又发明了汇编语言,它是把机器语言的01指令用一些助记符表示,例如MOV, ADD, MUL等等。
不过,随着程序日趋复杂,汇编语言的缺点也日渐显露。它的编程方式与人们思考问题的思维方式有很大差异,因此开发效率很低。而且不同的机器具有不同的汇编指令,编写的程序不具备跨平台特性。这促使人们开发出更高级的语言。
高级语言的种类很多,每一种都具有不同的用途。对于c语言,主要编写与操作系统、硬件驱动相关的程序。无论是windows还是linux系统,几乎都是由c语言编写的。c语言可以被认为是一个机器语言与高级语言的过渡语言,或成为中间语言。
c++语言是在c语言的基础上,添加了许多现代高级语言的特性,包括面向对象、封装、继承与多态等特性。它既具有低级语言可以直接操作内存地址的指针,又具有高级语言的类、对象等概念,可以说是最全面、复杂的一门语言。目前最新的国际标准是c++17,于去年发布。目前主要应用于大型桌面应用、游戏引擎的开发。