做windows程序,核心是调用win32的类库创建窗口相关的对象。那么c和c++是可以直接调用win32类库的,所以可以开发,但是要写很多窗口事件处理等的方法,都要自己写。于是微软出了atl和mfc帮你快速编写windows程序。这些代码都是非托管的,也就是说直接访问系统调用或者库函数的,不安全,容易出现灾难性的结果(但运行效率高)。于是微软推出了.net再次封装,语言是c#,含义为c++++,这时代码是托管的,没有指针。这时开发效率高了,更安全了,但是运行效率相对就低一些。而java的虚拟机在底层调用win32的类库,用自己的一套awt和swt类库和java语言创建窗口,目的是为了可以移植到其它平台上。
根据实际需求来定
若重界面 建议用C#
若重效率 建议用C++
开发难度:C++稍大于C#