1。面向对象没有java彻底。
由于C++要兼容C的内容,而C是面向过程的,所以C++不可避免地出现过程影子,并不算是完全的面向对象的程序设计语言。例如总得要有main或winmain之类的过程吧。
2。C++的移植能力没有java好。 由于C++的事实标准的存在,即各个编译器总存在差异,所以或多或少存 在不兼容。而且各个软件平台的C++启动代码和硬件指令不同,编译后的C++程序一般是不能跨平台的。而java从娘胎里出来就是为了跨平台执行的,不采 用二进制机器码作为最终代码,所以在移植方面较好。
3。C++的指针操作使得它不安全。 java没有指针,而C++的指针越界或野指针是造成弄脏内存的重要原因。 但是事情总得一分为二,C++的指针也是其效率大大超过java的原因之一。 3。C++可以直接操作硬件,带来了不安全。 java不提供硬件操作,而C++兼容C,使得它继承了其硬件操作功能, 是祸是福,各有说词。有人说它带来了不安全,也有人说它是所向披靡 的屠龙之器。
4。C++的动态对象必须及时销毁,否则可能会造成内存泄漏,而java免除了这个麻烦 java用垃圾收集器清楚不用的对象,而C++没有相关机制,使得上下 文终对象的建立和销毁不成对,就会造成内存泄漏。
5。C++的在网站建设方面不如java“强” 因为C++应该没有java在项目开发上来得快捷。之所以加引号,是因为 开发HTTP/1.0 java通常显得更健壮。 对象句柄一定初始化为null 句柄会得到检查,出错则抛弃异常 数组会检查界限 提供多线程等。