C++和Python的区别
- python是一种脚本语言,是解释执行的,而C++是编译语言,是需要编译后在特定平台运行的。
- python可以很方便的跨平台,但是效率没有C++高。
- Python使用缩进来区分不同的代码块,C++使用花括号来区分
- C++中需要事先定义变量的类型,而Python不需要
- Python的库函数比C++的多,调用起来很方便
C++和C语言的区别
- C++中new和delete是对内存分配的运算符,取代了C中的malloc和free。
- 标准C++中的字符串类取代了标准C函数库头文件中的字符数组处理函数(C中没有字符串类型)。
- C++中用来做控制态输入输出的iostream类库替代了标准C中的stdio函数库。
- C++中的try/catch/throw异常处理机制取代了标准C中的setjmp()和longjmp()函数。
- C++可以重载,C语言不允许。在C++中,允许有相同的函数名,不过它们的参数类型不能完全相同,这样这些函数就可以相互区别开来。而这在C语言中是不允许的。
- 在C++中,除了值和指针之外,新增了引用。
C++与Java的区别
语言特性:
- Java语言给开发人员提供了更为简洁的语法;完全面向对象,由于JVM可以安装到任何的操作系统上,所以说它的可移植性强
- Java语言中没有指针的概念,引入了真正的数组。
- C++也可以在其他系统运行,但是需要不同的编码(这一点不如Java,只编写一次代码,到处运行),例如对一个数字,在windows下是大端存储,在unix中则为小端存储。Java程序一般都是生成字节码,在JVM里面运行得到结果
- Java用接口(Interface)技术取代C++程序中的抽象类。接口与抽象类有同样的功能,但是省却了在实现和维护上的复杂性
垃圾回收:
- C++用析构函数回收垃圾,Java语言不使用指针,内存的分配和回收都是自动进行的,程序员无须考虑内存碎片的问题