1. C++的代码错误容易引起安全问题,造成内存泄漏,运行出错。C#的代码错误容易引起性能问题。如果追求性能,用C++,如果追求安全,用C#。
2. C++的开发难度高,开发周期较长,但是运行效率高;C#的开发难度低,开发效率高,运行效率低;
3. C++注重实现功能,只要时间充裕,可以实现非常强大的功能;C#更加注重软件工程的应用,各种设计模式的使用,面向对象,是现代软件工程的思想体现。适合企业内高效的开发模式;
4. C++的MFC界面编程难度较高,美化界面需要大量代码的支持。C#的WPF的界面编程很简单,界面代码与程序代码分开,界面可使用可视化设计程序,如Expression Blend设计。
5. C++对串口,网络TCP,数据库方便的编程都支持,但是没有现成的完整类库调用,需要大量代码支持。 C#中这些都已经有类库,直接调用即可。代码量少很多。
6. C++打造界面像使用画笔画图,想怎么画就怎么画,结果取决于画家的功力;C#打造界面像使用Photoshop画图,不会画画的人也能画出一些精美图片来。
用c#开发的界面不一定会好看一点,只不过是简单很多,不过它做出的界面性能不好,特别是刷新方面的,如果有一定功底建议用c++开发界面,可以用皮肤控件如skin++等美化MFC的界面,如果只是开发一些个人的桌面软件,用c#开发还是简单而且方便很多的:)
我同意楼上的说法,不过要是做游戏还是C++好啊