C#和C++哪个强大?为什么?

 我来答
tattackor
推荐于2018-02-04 · TA获得超过3.5万个赞
知道大有可为答主
回答量:5083
采纳率:94%
帮助的人:1058万
展开全部
寸有所短,尺有所长。各个语言都有各自的特色和不足,不可以好/坏来评价。应该以自己需求来选择最合适的编程语言
1、 效率方面:C++注重运行效率,如果对实时性有较高要求,首选C++/C语言。C#写成的代码,都是先被编译成中间语言(IL,Intermediate Language,在运行时,再由即时编译器(JIT,Just-In-Time)编译成本机代码,所以实时性上少欠一筹。
2、依赖性:C++可以生成native(本地代码),不用依赖于.net framework;C#需要相应版本的.net framework支持。
3、可移植性:采用标准C++编写的代码(或使用QT编写的代码)可移植性还是比较强的;采用C#编写的程序目前基本上只能运行于windows系统上,linux平台上有个mono项目用于将C#迁移到linux平台使用,但是目前该项目还有很长的路要走。
4、易用性:C++从C语言过渡而来,对C语言保持了最大的兼容性,熟悉C语言的用户很容易上手,但是也因为这一原因,使C++不是一个纯粹的面向对象的语言。而C#则是一个彻底的面向对象语言。C++中最特色的部分就是指针,但是现在普遍认为应该适度使用指针,因为它太容易出问题了,C++中可以设置全局变量;C#很少使用指针(还存在,在非安全代码中仍使用),没有全局变量。C++中程序员要自行处理对象的析构,容易出错;C#有垃圾回收机制(从java借鉴过来的,其实还有很多东西都像是从java学来的),程序员不用再过分担忧对象的析构了,一切交给系统来处理。初学者C#更容易上手。
5、数据库:大多数数据库软件都为二者提供了相应的访问接口,相对而言C#更容易使用。
6、网页编程:很明显,C#在Web编程上更现代,更灵活,更易用。
7、并行编程:例如nVidia的CUDA并行计算架构只对C++提供了支持,尽管有第三方提供了面向C#的接口,还是使用C++更方便一些。
落花下的水车小屋
2018-10-23 · 生活不止有眼前的苟且,还有诗和远方
落花下的水车小屋
采纳数:59 获赞数:97

向TA提问 私信TA
展开全部
C#好点。
1.C#和C的语法几乎是互通的,只不过C#是完全面向对象的,C是面向过程的。
2.C#的很多内容都可以用C去映射, 比如委托类似于指向函数的指针, 结构体相当于typedef,类相当于type*, 接口则是一个全新的概念了,这体现着一定的编程思想的转换。
3.C#出来得晚性能、更方面都比较全面。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
自我编程
2018-09-24 · 科技优质答主
自我编程
采纳数:1481 获赞数:4290

向TA提问 私信TA
展开全部
都以c为基础,c++是c的升级版,与c比较最大区别多了面向对象。
c#是微软在c++基础上开发的新语言,更加面向对象,开发效率更高。
c#更依赖系统,移植性不如c++。
c#运行效率较c++低。

但c#,易使用易开发。
孰优孰劣,自行按需考虑吧。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
heyrdaxm
2011-10-22 · 超过18用户采纳过TA的回答
知道答主
回答量:69
采纳率:0%
帮助的人:43.7万
展开全部
在处理底层东西的时候c++比较好,所以你看windows,office以及到魔兽世界的内核都是用的c++的,这就是因为c++可以直接操作内存。c#则无法直接操作内存,开发效率上C#肯定是高于c++的,但执行上c++就高点了。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
hutongmeng
2011-10-22 · TA获得超过201个赞
知道小有建树答主
回答量:256
采纳率:0%
帮助的人:229万
展开全部
没有哪个更强大的,就是语言而已
C++半OO语言,有指针这个强大的东西,在控制内存,处理数据方面会好一点。
C#纯OO语言,在.NET虚拟机上面跑的,性能可能没有直接对内存操作这么好,但是在快速开发,重用方面好一点
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(32)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式