问答文章1 问答文章501 问答文章1001 问答文章1501 问答文章2001 问答文章2501 问答文章3001 问答文章3501 问答文章4001 问答文章4501 问答文章5001 问答文章5501 问答文章6001 问答文章6501 问答文章7001 问答文章7501 问答文章8001 问答文章8501 问答文章9001 问答文章9501

请问C#中的winform和WFC有什么区别?

发布网友 发布时间:2022-04-22 19:52

我来回答

4个回答

热心网友 时间:2023-10-27 00:19

亲,一个是基于Vc++,一个是基于VC#的,编程所用的语言不通。两者运行的环境也不一样,编译好的MFC可以运行在任何电脑上,而要运行winform必须要安装.netFramework才可以,winform所使用的C#语言和java差不多,都是先编译为一种中间语言,再由各自对应的平台解释执行。追问1解释执行?解释执行不是JS脚本语言的特性吗?C#和JAVA不是编译执行吗?、
2运行wfc不用.net框架吗?那它是基于什么环境的?难道只要是windows的系统就可以运行吗?
3我想做一款类似抢票类的软件,要可以模拟登录12306的,你觉得我用什么比较好?
望不吝赐教,感激不尽!

追答

不是说先编译为中间代码,再由各自运行平台解释执行了吗

不需要,不是说mfc吗,怎么又变成wfc了,mfc编译后就直接是exe的可执行文件,也就是0/1二进制代码了,计算机都是要0、1二进制代码才能执行的

现在C#比较流行,建议用winform,本人觉得比C++好学一些

热心网友 时间:2023-10-27 00:19

一个是基于Vc++,一个是基于VC#的,编程所用的语言不通。两者运行的环境也不一样,编译好的MFC可以运行在任何电脑上,而要运行winform必须要安装.netFramework才可以,winform所使用的C#语言和java差不多,都是先编译为一种中间语言,再由各自对应的平台解释执行。

热心网友 时间:2023-10-27 00:20

相关说明: 说错了不是WFC是MFC,
两者都是开发窗口程序的。
一、netFramework才可以。两者运行的环境也不一样,
二、winform所使用的C#语言和java差不多,编译好的MFC可以运行在任何电脑上,一个是基于Vc++,
三、编程所用的语言不通,一个是基于VC#的,都是先编译为一种中间语言,而要运行winform必须要安装,再由各自对应的平台解释执行。

热心网友 时间:2023-10-27 00:21

一、c++和C#编程语言来说,只是它们的设计目的有所区别。
c++在设计之初希望提供先进的面向对象特性,同时提供很好的性能。但是为了保证和以往的程序、开发人员的知识兼容,c++与c语言几乎完全兼容。c语言
本身其实就是现代计算机的高级抽象,可以直接访问地址、通过指针可以访问几乎任何内存地址;堆和栈的结构体现等待。当然c++也就具有了这样的特性。随
着 c++的逐步发展,generic programming 泛型编程技术和stl标准模板库的引入,c++和c的差异越来越大。基本上c++是为了
高效地使用面向对象技术或者泛型技术编写大规模高性能应用程序(往往是一些相对比较底层的应用程序)而设计的。
c#通过底层的虚拟机机制减少了c/c++语言中常常容易发生的内存泄漏和安全性问题,代价是运行速度减慢。同样的由于简化了编程语言的复杂性(c#远远
比c++来得简单),大大提高了开发者得效率。另外c#具有.net庞大的类库,这个优势是c++所不具有的。因此c#非常合适开发企业中处理业务的应用
程序。同时微软所有的操作系统、服务器程序、桌面端程序都在向.net平台统一。在历史上与次类似的情形(指微软技术)只有在微软从16位平台向32位平
台转变的过程中发生过。因此现在.net的转变对开发者来说可能是痛苦的(因为要学习很多新的东西),但也充满了机会。

二、具体区别:
1.继承:C++支持多继承,C#类只能继承一个基类中的实现但可以实现多个接口。
2.数组:声明 C# 数组和声明 C++ 数组的语法不同。在 C# 中,“[]”标记出现在数组类型的后面。
3.数据类型:在C++中bool类可以与整型转换,但C#中bool 类型和其他类型(特别是 int)之间没有转换。long 类型:在 C# 中,long 数据类型为 64 位,而在 C++ 中为 32 位。
4.struct 类型:在 C# 中,类和结构在语义上不同。struct 是值类型,而 class 是引用类型。
5.switch 语句:与 C++ 中的 switch 语句不同,C# 不支持从一个 case 标签贯穿到另一个 case 标签。
6.delegate 类型:委托与 C++ 中的函数指针基本相似,但前者具有类型安全,是安全的。
7.从派生类调用重写基类成员。 base
8.使用 new 修饰符显式隐藏继承成员。
9.重写方法需要父类方法中用virtual声名,子类方法用override 关键字。
10.预处理器指令用于条件编译。C# 中不使用头文件。 C# 预处理器指令
11.异常处理:C#中引入了 finally 语句,这是C++没有的。
12.C# 运算符:C# 支持其他运算符,如 is 和 typeof。它还引入了某些逻辑运算符的不同功能。
13. static 的使用,static方法只能由类名调用,改变static变量。
14.在构造基类上替代 C++ 初始化列表的方法。
15.Main 方法和 C++ 及Java中的 main 函数的声明方式不同,Main而不能用main
16.方法参数:C# 支持 ref 和 out 参数,这两个参数取代指针通过引用传递参数。
17.在 C# 中只能在unsafe不安全模式下才使用指针。
18.在 C# 中以不同的方式执行重载运算符。
19.字符串:C# 字符串不同于 C++ 字符串。
20.foreach:C#从VB中引入了foreach关键字使得以循环访问数组和集合。
21.C# 中没有全局方法和全局变量:方法和变量必须包含在类型声明(如 class 或 struct)中。
22.C# 中没有头文件和 #include 指令:using 指令用于引用其他未完全限定类型名的命名空间中的类型。
23.C# 中的局部变量在初始化前不能使用。
24析构函数:在 C# 中,不能控制析构函数的调用时间,原因是析构函数由垃圾回收器自动调用析构函数 。
25构造函数:与 C++ 类似,如果在 C# 中没有提供类构造函数,则为自动生成默认构造函数。该默认构造函数将所有字段初始化为它们的默认值。
26.在 C# 中,方法参数不能有默认值。如果要获得同样的效果,需使用方法重载。
声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com
女生多大后可以不在长身高? 如何不用软件把手机投屏到电脑上手机屏幕怎样投放到电脑上 战时拒绝、故意延误军事订货罪既遂的处罚? 战时故意延误军事订货罪处罚标准 名师1+1导读方案:汤姆·索亚历险记目录 三星sm-g7200打开微信慢,无法正常收看,网速不慢。 笔记本电脑如何调亮屏幕亮度 大伙说说洗衣机要不要带烘干好 热烘干洗衣机怎么样 ef英语哪个好 春天要怎样养生? 任天堂WFC是什么? 想要做漂亮的水果拼盘,你有哪些好的方法吗? “BV-3*2.5-SC20-WFC”的意思是什么? 春季如何养生,最简单实用的六个小常识 wfc是什么意思安利 橙子皮可以雕刻成什么呢? 什么wfc麦田币开源代码 如何制做水果雕切拼盘? wfc中文是什么意思? 环球金融中心 WFC是缩写 那英文的全称是什么? 橙子皮上怎么刻字 WFC 什么意思 wfc是什么意思 WFS公链一WFC是不是骗局 怎么看WFC麦田币 “姹借溅缇”这是什么乱码? QQ,关于对好友的权限设置,下面细说。 怎么把qq聊天里的字体弄细 QQ详细等级 用苹果 香蕉 橙子 梨怎样做小动物? 美国3大支柱产业是什么 美国的有那几大银行 这几个银行 在美国有怎么样的影响力 春季养生都需要注意哪些? 重庆解放碑wfc环球金融中心表白字幕怎么弄的 春季怎么养生? 橙子画法简单画法 WFC领地环球金融中心的大堂设计有什么寓意嘛? 春季养生的要点是什么? 制作水果拼盘的技巧?有什么 WFC电气符号是什么意思 电器线路敷设WCE、WFC什么意思 春季养生需要注意些什么? 电气求sc50一WFc是什么意思 水果拼盘怎么做才有创意呢?要好吃又好看的 QQ信息群发软件那个好 WFC 计算器 怎样做果盘才好看? qq群发消息的软件哪个比较好? 格斗电竞赛WFC都有什么比赛项目 春天养生需要注意什么?