大家来说说VC++,.NET和C#语言(平台)的比较

zhouhaiyangqq 2011-02-10 04:39:53
最近要做一个调研内容是:
VC++,.NET和C#语言(平台)的比较:优缺点,特点,性能,适用场合等。例如:运行时间,占有内存空间,语言安全性,语言可移植性(跨平台)等。知道或用过的朋友请帮帮忙,都来说一说,复制的网上找的内容也行。
...全文
332 26 打赏 收藏 转发到动态 举报
写回复
用AI写文章
26 条回复
切换为时间正序
请发表友善的回复…
发表回复
sendwb 2011-02-16
  • 打赏
  • 举报
回复
DOTNET永远也不可能称霸江湖,每个语言或者平台的出现都会有一定的侧重,例如C,这么多年过去了,C语言的地位始终都没有被动摇过,都趋势这么多年了,为什么C语言从来都没有被趋势掉,希望那些整天呼喊着趋势的同行,把眼光看得再深层一点,不要一被某厂商忽悠了一下就被趋势了
renxu350 2011-02-16
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 caozhy 的回复:]

Visual C# 性能不如 Visual C++ 其实是一种偏见。

事实上,Visual C# 的性能和 VC++ 相比差别本来就不大。尤其是纯粹的数学运算。

而且,C#的性能往往要比C++好,这是因为C#是运行时编译的,所以它可以根据运行的环境智能选择更好的优化。比如它监测到目标计算机支持 iSSE3,那么它可以产生优化的代码。VC++则不行。虽然VC++可以为新指令集产生优化代码,但是它无法为开发阶段还没有出现的指令集做优化。.NET程序只需要升级.NET框架,而不需要重新编译既有的程序就可以享受到新硬件的特性。
.NET程序还可以知道目标电脑是Intel还是AMD,分支预测,指令对齐方面的偏好,并且优化,这也是静态语言望尘莫及的。
[/Quote]

这是真的吗,.NET-C#真有这么高级吗?
coolzdp 2011-02-16
  • 打赏
  • 举报
回复
存在即为合理
Russell2014 2011-02-15
  • 打赏
  • 举报
回复
.net现在主要是中间代码、托管影响了性能,等以后硬件先进了,.net终会称霸江湖的。
Dobzhansky 2011-02-15
  • 打赏
  • 举报
回复
在不知道要解决的问题之前就有这么多关乎优劣的争论,
真是难得.
Russell2014 2011-02-15
  • 打赏
  • 举报
回复
以后的趋势都是.net的了。
请叫我涛哥0-0 2011-02-15
  • 打赏
  • 举报
回复
我是两个都做,C++/C#各有优点。
C++的执行效率是高点,但开发效率慢,而且有很多异常处理,技术没过关的可能造成内存泄露。
这对程序员要求比较高。
C#的是它第一次编译时候慢,别的时候我感觉还行,随着.NET不断升级,改善了很多。
VC++是不能跨平台的,但可以用别开源技术:比如QT(这是可以跨平台的)。
C#现在还不能跨平添,随着.NET对其他OS支持,也可做到跨平台。
_三皮_ 2011-02-12
  • 打赏
  • 举报
回复
vc++学起来,做起来麻烦。好多东西要手工完成,界面也麻烦。但用起来性能比较好,在WINDOWS平台还不用装框架。尤其适合总和硬件设备的交互,通讯等方面。
.NET上手快,开发性能也高。一般的业务还是比较好的,原来做VC++,现在改做.NET了,还是比较喜欢.NET
用户 昵称 2011-02-12
  • 打赏
  • 举报
回复
c#俺是不懂,俺以前学过好几样,都是上世纪末流行的东西,vc的综合成本是最低的,而且低很多。
sendwb 2011-02-12
  • 打赏
  • 举报
回复
13楼总结得好,VC++只是一个工具,dotNET是一个搭载工具的平台,C#是一种语言,都不是一个玩意儿。
要对比语言,也是C++ VS JSP VS C# 这种方式对比,但可比性也不高
syl5005 2011-02-12
  • 打赏
  • 举报
回复
VC++,.NET和C#语言,这三个怎么个意思

怎么比,

根本不是一回事儿嘛,

一把剪刀,一个工具箱,一个铲子

怎么比?
tulipcaicai 2011-02-11
  • 打赏
  • 举报
回复
只会C++,不敢发言,酱油观注。
jameshooo 2011-02-10
  • 打赏
  • 举报
回复
哎,别提了,我被前任比尔局长忽悠十余年,现在被一脚踹开,想接受新局忽悠也轮不到我啊。还是你们有前途……
threenewbee 2011-02-10
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 jameshooo 的回复:]
7楼难道也是MS战略忽悠局的成员?据MS战略忽悠局局长鲍尔默声称,下一代C#语言将不再需要CPU,因为它能运行时动态产生需要的CPU,只要你在代码中指定,就能生成Intel或者AMD的CPU,想要多少就生成多少,且支持iSSE9超级混沌指令。
[/Quote]
都是老中医,你也甭得意。好像VC++不是微软的一样。
jameshooo 2011-02-10
  • 打赏
  • 举报
回复
7楼难道也是MS战略忽悠局的成员?据MS战略忽悠局局长鲍尔默声称,下一代C#语言将不再需要CPU,因为它能运行时动态产生需要的CPU,只要你在代码中指定,就能生成Intel或者AMD的CPU,想要多少就生成多少,且支持iSSE9超级混沌指令。
Lactoferrin 2011-02-10
  • 打赏
  • 举报
回复
.NET程序只需要升级.NET框架,而不需要重新编译既有的程序就可以享受到新硬件的特性?
好像为某个.net框架编的程序就只能在那个版本运行,比如为.net3编的就不能在.net4或.net2运行,还是要重新编译。

而且C#占内存多,启动慢,特别是在mscorsvw.exe没有运行时。
threenewbee 2011-02-10
  • 打赏
  • 举报
回复
Visual C# 性能不如 Visual C++ 其实是一种偏见。

事实上,Visual C# 的性能和 VC++ 相比差别本来就不大。尤其是纯粹的数学运算。

而且,C#的性能往往要比C++好,这是因为C#是运行时编译的,所以它可以根据运行的环境智能选择更好的优化。比如它监测到目标计算机支持 iSSE3,那么它可以产生优化的代码。VC++则不行。虽然VC++可以为新指令集产生优化代码,但是它无法为开发阶段还没有出现的指令集做优化。.NET程序只需要升级.NET框架,而不需要重新编译既有的程序就可以享受到新硬件的特性。
.NET程序还可以知道目标电脑是Intel还是AMD,分支预测,指令对齐方面的偏好,并且优化,这也是静态语言望尘莫及的。
Eleven 2011-02-10
  • 打赏
  • 举报
回复
只会最前面的那个~
jameshooo 2011-02-10
  • 打赏
  • 举报
回复
微软的东东都不能跨平台
手机写程序 2011-02-10
  • 打赏
  • 举报
回复
C#也不错,但懒的学了。
习惯一种工具就有依赖了。
加载更多回复(3)

16,471

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC相关问题讨论
社区管理员
  • 基础类社区
  • Web++
  • encoderlee
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

        VC/MFC社区版块或许是CSDN最“古老”的版块了,记忆之中,与CSDN的年龄几乎差不多。随着时间的推移,MFC技术渐渐的偏离了开发主流,若干年之后的今天,当我们面对着微软的这个经典之笔,内心充满着敬意,那些曾经的记忆,可以说代表着二十年前曾经的辉煌……
        向经典致敬,或许是老一代程序员内心里面难以释怀的感受。互联网大行其道的今天,我们期待着MFC技术能够恢复其曾经的辉煌,或许这个期待会永远成为一种“梦想”,或许一切皆有可能……
        我们希望这个版块可以很好的适配Web时代,期待更好的互联网技术能够使得MFC技术框架得以重现活力,……

试试用AI创作助手写篇文章吧