(python代写)(python代写代码)

大家好,今天是2月13日,情人节的前一天,小编祝朋友们单身快乐。这几天小编一直在水深火热之中,所以文章也没有更新,在这里说声抱歉了。不过呢,也有一个让人热血沸腾的好消息:小编终于抱到了一个神奇赞助商的大腿,终于不用再纠结1万阅读是1块钱还是2块钱的小事情了。

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

(python代写)(python代写代码)

什么是MFC

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

(python代写)(python代写代码)

CString

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

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

(python代写)(python代写代码)

反人类的方法名

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

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

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

(python代写)(python代写代码)

JSON

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

(python代写)(python代写代码)

粗糙的界面设计

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

(python代写)(python代写代码)

其它

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

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

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

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

(python代写)(python代写代码)

活动

最后插播赞助商的一个赞助活动,此商是做程序代写的,私信小编可以免费领取此商的无门槛立减50或100元优惠劵​一张,祝朋友们用的开心。

附上正确的使用方法:

先聊需求,然后砍价​,砍​完价之后,再说起您有咱这儿的50元券,给他一个出其不意的打击感。

(python代写)(python代写代码)

声明:我要去上班所有作品(图文、音视频)均由用户自行上传分享,仅供网友学习交流,版权归原作者python码神所有,原文出处。若您的权利被侵害,请联系删除。

本文标题:(python代写)(python代写代码)
本文链接:https://www.51qsb.cn/article/m8xeh.html

(0)
打赏微信扫一扫微信扫一扫QQ扫一扫QQ扫一扫
上一篇2023-02-21
下一篇2023-02-21

你可能还想知道

发表回复

登录后才能评论