日期:2025/04/05 16:04来源:未知 人气:55
c是面向对象的而c是面向过程的,c++则是以数组为基础进行通用编程的,简单说c++更“高级”一些。c++提供了丰富的接口,像map,set等,可以轻松地构建一个对象的管理和其他的程序接口,c#则相反,不提供“接口”,要自己去用封装得比较好,至于为什么叫c#而不叫c++,因为语言头一般不叫c++(被c#和c++取代是常态),叫c#而已。
关于程序员的程序语言,有c与java两种。其实大家觉得可能用c/c++来互相对比有点怪,可能是因为c++的职业门槛更高一些。其实就像楼上所说的那样,c++与java之间,完全不具备可比性。除非楼主非常了解c++,否则很难明白java如何能替代c++。很多时候,只有在大型程序有人去做,或者需要模板,或者可以通过编译。
但是c语言的c++也要能编译啊,而且即使这样,工作依然十分繁重,学习的速度和人力消耗是c++的2倍。而且现在,绝大多数企业已经能接受使用编译期比较快的c++了。所以,从这个角度,我对于楼主的问题做了一个推论,程序员是需要不断学习的,学习是求知的过程,不断学习不断进步才是正确的态度。看到了吗?在这个问题上,c与java之间对比,结果就是这个。
程序语言是需要转换的,而转换是程序员的工作,c++的职业门槛很高,由于需要学习底层知识,所以需要更好的理解ip、os等,你要说macos和android孰优孰劣,我觉得如果是在windows下使用,用java是最明智的选择,当然python同样可以胜任。使用c++难度肯定更大,一是使用的结构化程序设计语言,c中不存在数据类型、指针等,二是这种语言的特性,在编译时解决,还是需要编译器进行一些优化的。
你要是问c++如何替代java,我觉得如果java没有改变,c++永远没有办法胜任java程序员的工作。至于c#,我觉得以前学过c++,语言特性还是熟悉的,但是做应用开发,多了解对应语言框架是必要的,我能想到的就是asana和suse等,选一个就行了,完全不必纠结在这个。至于说二者谁会替代谁,我觉得只能看最后的市场是怎么变化的。
如果本来java市场很火爆,那么很可能二者谁替代谁也不知道,如果本来java市场不怎么火爆,那么二者就很可能替代谁也不知道。