当前位置: 首页 > 后端技术 > PHP

PHP、Java、Python、C、C++这几种编程语言各有什么优势或特点?(4)

时间:2023-03-29 20:57:08 PHP

PHP、Java、Python、C、C++这些编程语言各有什么优点或特点?(4)C++有什么编程范式?Procedural(使用STL用类C语言编程)ADT(自定义抽象数据类型,继承;但没有new,没有virtual;copyconstruction;为了防止资源泄露,还发明了RAII来初始化和释放资源)面向对象(使用new,使用virtual,需要指针或引用;实现多态。)泛型编程(《Modern C++ Design》各种tricks,很少遇到业务层代码)C++编译器是如何实现的?C++开始有了一个叫做cfront的编译器,它先把C++语言翻译成C语言。然后用C编译器编译,C编译器不知道这段代码是C++的还是C的。C++的语言特性是如何实现的?简单地说。成员变量:类似于C语言中的struct,最后会直接替换成一个地址,以实现高效访问。成员函数:使用特殊的函数名编码方案,将其翻译成C函数,并添加this指针作为参数。(如___clsA12345func001(...,clsA*this))类型继承系统:在编译C++时通过Meta-Data实现。即在编译时,编译器知道类型信息和继承系统,但编译成C语言后就丢失了这些类型信息。虚函数和虚继承:为了支持多态性,这也是“面向对象”最重要的特征,使用了虚函数表和虚基类表。请注意,运行时多态性是通过运行时查找表实现的。稍后会详细介绍。模板:通过代码复制实现。每次编译都需要重新编译,不能编译成库文件直接使用。推荐观看:笨方法学Python!编程新手第一本Python入门书!注意!