WTL---WxWidget---MFC 何去何从

简介: C++程序员打交道最多的就是MFC了,这个我不想多说,说来都是泪(C#年年更新,C++十年才出了一个featurePack还不是很好用)现在另外两支队伍越来越庞大(所谓穷则思变,呵呵),一是WTL,关于它的种种传说可以参考WTL中文教程,里面讲的很详细,这里我想说的是为什么使用WTL:传说WTL是微...
C++程序员打交道最多的就是MFC了,这个我不想多说,说来都是泪(C#年年更新,C++十年才出了一个featurePack还不是很好用)

现在另外两支队伍越来越庞大(所谓穷则思变,呵呵),一是WTL,关于它的种种传说可以参考 WTL中文教程 ,里面讲的很详细,这里我想说的是为什么使用WTL:
传说WTL是微软内部所使用的界面框架程序,原因是高效,简洁,实际也是如此,WTL的程序内的内存占用比MFC小的多,而且WTL内建了对于可缩放对话框的支持(支持控件停靠哦),对于多文档以及视类的支持更是MFC望尘莫及的,但是WTL也有其自身的缺点,比如开发文档少,尤其是中文的,向导不够聪明(谁用谁知道,呵呵),换句话说,用WTL就意味着多敲一些代码,不过这个可以有一些第三方工具缓解(还是那句话,穷则思变),如 WTL helper ,还有国产的 WTL helper ,还有国产的 VFC ,两者都是开源软件,放心使用,建议有意开发WTL的程序员先打好基本功,因为这个基于ATL的这个铁娘子不是谁都可以驾驭的哦,如果对程序大小要求不是太苛刻的话,还是拿MFC将就吧

其二就是我最近很感兴趣的 WxWidget , 这款框架最大的优势就是真正意义上的跨平台,其注意真正两个字,因为在我看来所谓的java跨平台不过是幌子,有种连JVM也跨平台试试(JAVA拥护者别拍我哦,其实JAVA还是在OO领域很强大的),那真正二字就是因为,WxWidget提供了在本机源码级的跨平台,从此你在让客户使用你软件的时候不必再说:“你必须给我安装×××虚拟机或×××Framwork”,在一个平台下编译的代码,不用做任何更改,在另一个平台下就可以编译通过并且发布,这岂不美哉,而且WxWidget所使用的界面元素几乎都取自本地计算机,就是说你的见面客气来很有亲和力,最终发布的二进制代码文件爱你无论是静态还是动态链接都要比GTK之流小很多(见图表)。有兴趣一试的可以看看 WxWidget开发环境配置



说了这么多,总结如下,三种平台各有所长,如果你是windows程序员,那么WxWidget对你而言没有多大意义,如果你刚开始接触C++,那WTL这个高品位新娘也许会让你忙的团团转,呵呵,大家自己斟酌吧
目录
相关文章
|
C# Windows
WPF技术之图形系列Polygon控件
WPF Polygon是Windows Presentation Foundation (WPF)框架中的一个标记元素,用于绘制多边形形状。它可以通过设置多个点的坐标来定义多边形的形状,可以绘制任意复杂度的多边形。
1215 0
|
Web App开发 iOS开发 Windows
ios获取原生系统应用的包名
ios获取原生系统应用的包名
2712 0
thinkphp6.0 集成Alipay 手机和电脑端支付的方法
第一步   下载 Alipay 的PHP SDK :https://docs.open.alipay.com/54/103419/ 第二步   解压下载都到的压缩包:   解压后得到的文件内容如图    第三步、上传得到的目录中的 aop 文件夹到 thinkphp 6.
6346 0
|
11月前
|
Linux C++
Linux c/c++文件虚拟内存映射
这篇文章介绍了在Linux环境下,如何使用虚拟内存映射技术来提高文件读写的速度,并通过C/C++代码示例展示了文件映射的整个流程。
296 0
|
Go
int64转换time【golang】
int64转换time【golang】
190 1
|
10月前
|
算法 安全 C++
提高C/C++代码的可读性
提高C/C++代码的可读性
207 4
|
程序员 C++ 开发者
C++命名空间揭秘:一招解决全局冲突,让你的代码模块化战斗值飙升!
【8月更文挑战第22天】在C++中,命名空间是解决命名冲突的关键机制,它帮助开发者组织代码并提升可维护性。本文通过一个图形库开发案例,展示了如何利用命名空间避免圆形和矩形类间的命名冲突。通过定义和实现这些类,并在主函数中使用命名空间创建对象及调用方法,我们不仅解决了冲突问题,还提高了代码的模块化程度和组织结构。这为实际项目开发提供了宝贵的参考经验。
203 2
|
存储 安全 Linux
Linux passwd命令:守护账户安全的密钥
`passwd`命令是Linux中管理用户密码的关键工具,确保数据安全。它用于更改密码,采用加密存储,并有锁定/解锁账号、设置密码策略等功能。参数如`-d`删除密码,`-l`锁定账号,`-u`解锁。最佳实践包括定期更改复杂密码,保护root密码,谨慎使用无密码选项。了解和正确使用passwd是保障系统安全的重要步骤。
|
算法 安全 Linux
Ctfshow web入门 PHP特性篇 web89-web151 全(二)
Ctfshow web入门 PHP特性篇 web89-web151 全(二)
340 0
|
编译器 Linux C语言
CMake构建大型C/C++项目:跨平台设计与高级应用(一)
CMake构建大型C/C++项目:跨平台设计与高级应用
1367 0