java是跨平台,c++不是跨平台的?


首先理解一下跨平台的含义:不依赖与操作系统,也不依赖硬件环境。

java是一次编译,到处运行,像java,flash这些可以理解为这样,因为他们运行在虚拟机上jvm的。而这个虚拟机,你也可以理解成为一个微型的操作系统。在不同的系统中有不同的jvm可以和他们进行一起安装,所以相应java字节码便可以跟着在任何平台上运行。 只要JVM自身的代码能在相应平台上运行,即JVM可行,则JAVA的程序员就可以不用考虑所写的程序要在哪里运行,反正都是在虚拟机上运行,然后变成相应平台的机器语言,而这个转变并不是程序员应该关心的。

所以java一次编译之后得到的运行程序也就有了跨平台的效果。c++也可以跨平台,只不过这种跨平台是源代码级别的,C/C++中跨平台的基础就是判断当前是什么操作系统,然后各个操作系统编写相应代码,从而实现程序的跨平台。c语言在Windows上编译的文件,放到Linux系统上运行,可能就有不兼容问题。c++的跨平台不如java,其实c++主要追求的目标是:实用+通用+性能。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM