问题描述
在看教学视频,讲到Java的一大特点跨平台性,说Java程序可移植性强是因为有Java虚拟机存在。那如果有C++虚拟机,C++程序的可移植性不也很好吗?初学者,不要鄙视我
解决方案
解决方案二:
是的,但那样C++也就不是C++了
解决方案三:
java就是这样出来的。嘿嘿。
解决方案四:
它们的原理不一样,java和C++都是基于C语言的,C++是对C语言的加强,本质上还是C语言;而java虽然也是基于C语言的,但它相当于C语言写的一个产品。java的跨平台性其实是在虚拟机上,java的语法一样,但不同的操作系统其实实现虚拟机是不同的,也就是你同样的java语法,虚拟机帮你转换成不同的C语言(不同的操作系统,C语言也会有差别),所以只要系统装了虚拟机,同样的java语法都可以用。但C++不同,它是C语言的加强,不同的系统不同的C语言,就会有不同的C++。
解决方案五:
你要知道linux系统和uninx系统都是c写的。c++写的代码,在没有窗体的情况下,大部分都是可以再linux上编译成功了的
解决方案六:
答案是,是的,虚拟机是作为中间的一个桥梁,Java直接与虚拟机做交互,之间的不同平台的任务就交给了虚拟机内部的实现,但是C++要比JAVA语言要早吧,那时应该是没考虑这个问题,之后肯定是想解决跨平台的问题,所以JAVA就出现了,就解决了这个问题,如果C++也做一个虚拟机也会解决这个问题,但为什么没有,由于我知道的也不是很多,可以请其他网友回答,我感觉现在要做的话,底层肯定要改,那感觉就像是变了一种语言,影响太大了
解决方案七:
反正就是模板套模板,前期处理多,后期就不用这么多。前期处理多了,灵活性就小了
解决方案八:
要是那样C++就不是C++了
解决方案九:
可移植性级别不一样而已,C++也在编译器级别也具有很好的跨平台性哦,Java是运行时跨平台性好。
解决方案十:
跨平台是个玩笑真正好的产品是不需要跨平台的众多牛X的软件比如photoshop3DsMaxMAYA你听说哪个是天生跨平台的?
解决方案十一:
引用9楼sunbo624的回复:
跨平台是个玩笑真正好的产品是不需要跨平台的众多牛X的软件比如photoshop3DsMaxMAYA你听说哪个是天生跨平台的?
我觉得还是使用量的问题,如果有一个用户体验超好、性能可媲美windows,使用人数有多的,我相信这些东西肯定也会有对应的版本的
解决方案十二:
引用10楼u011054333的回复:
Quote: 引用9楼sunbo624的回复:
跨平台是个玩笑真正好的产品是不需要跨平台的众多牛X的软件比如photoshop3DsMaxMAYA你听说哪个是天生跨平台的?我觉得还是使用量的问题,如果有一个用户体验超好、性能可媲美windows,使用人数有多的,我相信这些东西肯定也会有对应的版本的
这些软件都有mac对应版本但这些软件不是跨平台的跨平台指的是我只要有一份就能在不同的平台运行而使用率多的东西为什么这些软件不跨平台呢因为跨平台的"平台"质量不行
解决方案十三:
引用11楼sunbo624的回复:
Quote: 引用10楼u011054333的回复:
Quote: 引用9楼sunbo624的回复:
跨平台是个玩笑真正好的产品是不需要跨平台的众多牛X的软件比如photoshop3DsMaxMAYA你听说哪个是天生跨平台的?我觉得还是使用量的问题,如果有一个用户体验超好、性能可媲美windows,使用人数有多的,我相信这些东西肯定也会有对应的版本的
这些软件都有mac对应版本但这些软件不是跨平台的跨平台指的是我只要有一份就能在不同的平台运行而使用率多的东西为什么这些软件不跨平台呢因为跨平台的"平台"质量不行
好的,我貌似明白了,多谢讲解