c语言为什么用linux,不懂linux为什么要死守c语言。

该楼层疑似违规已被系统折叠 隐藏此楼查看此楼

C++很先进吗?C++很优美吗?

lz去看看unix编程艺术那本书会发现c++和*nix之类格格不入。

做系统底层开发,c++比c的优势在哪里?效率和简洁性都不如。

苹果主推objective-c,c++不受其重视;

windows倒是大量使用c++也尝到苦头了,mfc就是例子。所以微软现在主推.net, winRT,

c++还在,但c#占据其主流;

google使用,c++,java,python等。google给的建议是c++只在对性能要求极高的地方使用。google不使用c,因为它几乎不做系统底层开发。chrome OS和android的内核是linux内核。

c++经过这么些年经久不衰,但也没太大的变化,尤其相比c#,java这些。比如代码重构,设计模式,c++相比c#和java来实现这些太难了,因为c++当初的设计问题。

比如重构里面的rename,在c#和java里很容易,但c++里却很容易出问题。c++的头文件,一些变量都是分散于各文件上存在,再加上宏,重构难道更大些。

c++无所不能,但里面隐藏的复杂性也要付出更大的代价。现代语言最明显的特征是有高效的自动垃圾回收器,但c++要手动。手动更高效在现实中只是在少数情况下,对特定的项目和特定的高手。但与此相比产生的内存泄露,内存的调试却是大多数c++程序员每天要面对的。

c++的特长和优势是做面向对象编程,做可视化界面编程,比如开发游戏,客户端。国内以前大部分做c++都是win32,vc++,mfc。

但这些东西,对*nix有何用?unix的编程风格和c++完全是相反的。一个是kiss原则,一个是do everything。emacs是个另类,但也是lisp的风格,和c++不同。

我对c++的感觉就是:能少用就尽量少用,除非对性能非常苛求。底层开发,嵌入式有c;逻辑层面的,有动态语言特性的,c#,java这些更顺手些。

不过,在国内好像c++依然比较吃得开,所以有时候为了就业,也就想不了这么多。总之,用什么语言要看是什么应用环境,要做什么。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值