C#与Visual C++在桌面软件的开发比较

北战南征 提交于 2020-07-27 06:01:14

microsoft公 司推出了visual系列软件开发环境,包括为C++程序员提供的Visual C++.程序员能用C++语言在其上开发图形界面的软件。微软随Visual C++提供了很多用于显示Windows界面的库函数。可以说Visual C++就是C++加上windows图形界面。

市面上任何一本Visual C++教材都是假设用户已经掌握了C++语言,重点在讲和Windows程序设计相关的东西,而且往往都要讲MFC.没有C++基础,根本无法理解MFC 的任何东西。

VC++相比较C#,可以带来3倍的性能优势,3-10倍的资源占用优势。

因为C++靠近底层,封装较少,需要自己铺路造轮子的地方较多。所以开发困难一些,但也带来了更多的优化手段和运行效率,能够更充分利用计算机硬件资源。

通用的商业软件,自然要提供最佳性能了。否则,别人开发一个更快的,你就完蛋了。

作者:无缺草
链接:https://www.zhihu.com/question/40551563/answer/559487447
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

 

大公司不使用C#的原因还有。让自己开发的程序跑在 .net 上真是很不放心。 打个比方 即使 C# 有 PInvoke之类的平台调用技术,也可以写Windows Hook 但是一般只能写普通的窗口Hook 但是要写别的就不行了。像QQ这种软件 安全性非常重要。因此用C++开发几乎是必然。 因为C++可以写 QQ 进程保护之类的东西,然而 C#写不出 或者很难写出。或者即使写出来了,自己也很可能被反编译(C#写的程序 如果不做处理目前为止 网上很容易下载到反编译软件 基本上90%以上还原你们的源代码,你的心血或者 关键信息就完全泄漏)了,谈何安全?由于.net 编译上安全问题, 什么VM保护,混淆,基本上都是渣! 然而 C++编译后是 二进制的 汇编,相对来说 安全不少。而且C++对操作系统的功能访问非常友好,所以更加安全,可以实现更底层的安全机制保护程序。

除了这些.net framework 本身也是个问题。太大太臃肿,缺乏扩展性等问题。



作者:ggffss
链接:https://www.zhihu.com/question/40551563/answer/91511389
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

C#是一门高级语言,而VC++是一个开发工具,性质不同,拿来直接比较不是很合适。

如果要对比的话,应该拿C#和C++作对比。在桌面开发的范围内,那主要是WPF/Windows Forms和QT之间的对比。还有一些桌面开法经常要用到的基础类库的对比,例如是C#方面的Entity Framework、System.Net.Sockets、System.XML(.Linq)、 http://Json.Net……,对应C++/QT方面是QxOrm、QTcpSocket、QXmlReader、QJsonObject……


作者:深秋的黎明-禁言
链接:https://www.zhihu.com/question/40551563/answer/87171842
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

 

 

C++开发软件,80%时间在解决语法问题或者算法问题。
C#开发软件,100%时间在思考业务逻辑实现。
而企业都是结果导向型,只认效果的!

 

我来说下各种用C#做桌面程序(C/S)的:
1、医疗行业的各种业务系统的(比如HIS系统,挂个号、出个病历)
2、金融行业的各种前端和外围系统,比如某些核心对应的前端(柜员等系统)、ATM和其他自助设备,报表系统(特别是给人行和银监的)等
3、进销存、OA、财务、收银等企业内部的CS系统,比如常见的某些超市的收银系统
.......


作者:kimmking
链接:https://www.zhihu.com/question/40551563/answer/87149291
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!