布条百科 - 专业百科知识分享的网站 手机版
首页 > 生活 >

mfc是什么意思 神奇的赞助商

237次浏览     发布时间:2023-04-14 12:00:51    

不过呢,也有一个让人热血沸腾的好消息:小编终于抱到了一个神奇赞助商的大腿,终于不用再纠结1万阅读是1块钱还是2块钱的小事情了。

接下来还是说水深火热的事情吧,小编为了解决一个粉丝朋友的MFC编程上的问题,可谓是绞尽了脑汁又挖空了心思,下面就来看看这个坑爹的MFC。



什么是MFC

微软基础类库(英语:Microsoft Foundation Classes,简称MFC)是微软公司提供的一个类库(class libraries),以C++类的形式封装了Windows API,并且包含一个应用程序框架,以减少应用程序开发人员的工作量。其中包含大量Windows句柄封装类和很多Windows的内建控件和组件的封装类。



CString

区别于std::string,MFC搞了一个CString出来。这玩意儿太小众了,当您在网上搜一搜c++代码片断准备copy的时候,会发现全都是std::string的代码呀,根本没人写CString的版本。

于是每次从网上copy了代码,要先做一次CString到std::string的转化;代码结束的时候,还要再做一次std::string到CString的转化。



反人类的方法名

MFC里面的方法名实在是让人叹为观止无力吐槽了。比如有一个label控件(或者称为static text),那么给它赋值的方法怎么着也应该从下面选一个吧,比如:setText, setData, setValue之类的, 但是你猜MFC里面给label赋值的方法是啥? SetWindowTextW,对,后面还有一个莫名其妙没头没脑的W。

再比如,一个Modal类型的对话框,当用户点击了关闭按钮时,应该会调用哪个方法? 凭直觉或者良心来说,都应该是onClose或者onDestroy吧? 可MFC里面调用的方法偏偏是OnCancel。

最后再说一个更反人类的方法名,就发生在添加菜单Menu事件的时候,一个菜单项的默认事件处理函数名称竟然是On32777(),您没看错,这是一个完全没有任何语意的方法,要是不加注释您根本不知道它会不会是一个处理邮编的方法。



JSON

默认情况下,c++是没有办法理解json这种类型的数据的。于是,小编在网上找到了一个叫做jsoncpp的库,使用的时候发现它只支持stringstream,不支持char*,也不支持std::string... 于是先得把std::string里面保存的字符串放到std::istringstream里面,然后再 >> 到Json::Value里面,才能实现JSON字符串的解析。 这个作者设计接口的脑回路实在是让人感觉不可捉摸高深莫测。



粗糙的界面设计

您能相信么,在它的界面设计窗口里面,竟然不能直接修改控件上面的字体大小,更不要提颜色了。 必须写代码才能实现这么一个常用且看起来无比简单的问题,用惯了QT的小编当时真是佩服的五体投地心悦诚服。



其它

在与WEB通信时,还有很多想对MFC吐槽的,就不展开了,先罗列在这里了。

首先,WEB服务端一般是UTF-8的字符集, MFC里面可以认为是GBK的,于是要反复地转来转去,转来转去,转得人头晕。

其次,urlencode这么一个基础的功能啊,竟然都不封装一下。

最后,发个http请求,要写几十行代码,实在是让人忍不住加入python的怀抱啊。





相关文章

为什么涂料老是开裂(为何家里的乳胶漆总是容易出现开裂)

近年来,许多人在墙面装修的时候,都会选择刷乳胶漆,乳胶漆颜色丰富,耐脏和耐擦洗性出色,实用性高。但是,为何有的人家里的乳胶漆总是容易出现开裂,经过有老师傅提醒,才发现原来是这5点没做好。1、墙面粘结强度不够许多人在房屋刷乳胶漆后,老是出现开裂和空鼓,这主要因为墙面粘结强度不够,建议大家,将原先的墙皮

2025-05-12 23:48:02

为什么防漏电插座不会漏电(从功能上识别插座安全性)

安全插座到底要如何选择?选择什么样的安全插座才能保证儿童安全?现在市场上安全插座五花八门,个个都声称是“安全插座”,这给广大家长们在选购中带来了不少困扰,众所周知,市面上所谓的“安全插座”其实并不安全。伪劣产品众多。这也严重威胁儿童的用电安全。前段时间央视《每周质量报告》节目也曾对当前市场上的插座安

2025-05-12 22:58:21

大红酸枝木为什么开裂(买了大红酸枝家具,偶尔听到炸响怎么办?)

买了大红酸枝家具,偶尔听到炸响怎么办?其实大红酸枝家具炸想属于正常现象。那是红木家具开裂发出的声音,不必大惊小怪。小编在网上查看到很多用户在购买大红酸枝家具之后,发现家具会有炸响的现象,这到底是怎么一回事呢?下面我们一起来看看其中的原因以及维修的方法:红酸枝家具之所以容易开裂炸响,主要是因为红酸枝属

2025-05-12 22:55:32

为什么墙身瓷砖脱落(墙上的墙砖老是掉,还是要讲点道理)

墙砖被师傅贴在墙上,时间没到过多久,就出现很多墙砖掉落,甚至有些还会大面积出现脱落的现象。有不少人的房主不知道其缘由,事后就会将所有的原因全部怪在贴砖师傅身上,责任是否真的如房主所想呢?责任的归属,对于这行业有接触过的人,都还是有着一定的了解,施工人员的正确施工,确实对瓷砖脱落,有着一定的关系,但也

2025-05-12 22:40:24

水泵为什么频繁启动(自吸泵怎么吸不出来水)

1自吸泵怎么吸不出来水自吸泵抽不出水的原因及排除方法:自吸泵在使用的过程中,有时会出现不出水的问题。这就需要找出具体原因加以排除。造成自吸泵抽不出水的原因及排除方法有以下三种可能性:1-1 自吸泵体内无引水或存水不足。只有自吸泵的泵体内存有一定量的水,才能在起动。因旋转时的叶轮所产生的离心力将进水管

2025-05-12 20:32:27

为什么有暗卫的房子(为什么豪宅多暗卫?)

日常在和朋友的交流中,朋友提出最多的问题就是高端户型中为什么会有这么多的暗卫,在产品研发的过程中能够避免吗?今天就对这个问题进行简要的分析。一、主次功能房间的划分要求暗卫产生的最主要原因,是因为豪宅户型面积过大,且面宽有限,进深过长,因此在户型内部就形成了一些“暗角”,相比于对采光通风要求更高的客餐

2025-05-12 20:23:59