随笔分类 -  c++

好好学习,天天向上
摘要:BUG描述:QT3.2版本的QMessageBox有这样一个bug,就是当你传的参数足够长以至于你的屏幕不能显示的时候就会将字符串截断,剩下的字符串就无法显示了,如果本身的字符串长度已知,那就很好办了,在字符串中间加换行符呗,但是很多时候这个字符串的长度是不定的,程序中发生异常了catch后把字符串显示出来,不同的问题显示的长度就不一样。 到QT4这个bug就被修复了,但是很多较老的软件用的还是QT3的版本,偶尔会遇到这个问。 解决方案:解决问题的方法能看出一个人处理问题的能力。解决这个问题有三个方法:1,在QMessageBox调用之前判断字符串,只解决一个位置的bug,显然不行;2,在工. 阅读全文
posted @ 2011-03-07 14:39 ShaPherD 阅读(2666) 评论(0) 推荐(0) 编辑
摘要:生成器模式是一种在生成过程相同的情况下隐藏实现细节的创建型模式。 可以考虑这种场景,一个阅读器需要将一个文本转换为其他格式,转换的过程是相同的,比如先转换文字,再转换图片,段落,字体,染色等,最后组合在一起,得到创建的结果。再比如房屋的建造,都是先选地盘,然后挖地基,运输材料,画图纸,然后盖楼,不同的楼会选择不同的地盘,挖不同深度的地基等,然后建成的房屋也有不同的用途。 和抽象工厂模式不同,生成器... 阅读全文
posted @ 2010-11-19 16:44 ShaPherD 阅读(1672) 评论(0) 推荐(1) 编辑
摘要:最近抽空看了看gof的设计模式,感觉理解上有一定难度,而且即使看的时候理解了,用的时候也忘了,为了加深印象,把书上的一个应用场景用c++实现一下,因为平时较少用设计模式,理解上难免有误,错误之处望指正,不胜感激。意图 提供一个创建一系列相关活相互依赖对象的接口,而无需指定他们具体的类 个人理解:不暴露所用组件的具体实现,只提供使用相关类的接口,可维护性强。实用性 一个系统要独立于它的产品的创建、组... 阅读全文
posted @ 2010-11-18 20:47 ShaPherD 阅读(1253) 评论(1) 推荐(0) 编辑
摘要:Palomino值得一提的他的架构,非常灵活,场景的控制用的是lua脚本,其他的开发人员可以以自己的方式编写lua脚本,组建不一样的场景,而不用修改很多c++的代码;当然也是比较难以掌握的,特别是要调用c++写的函数必须要了解每个函数的用处和用法,同时要熟练掌握lua脚本。(源码地址:http://www.palomino3d.org/)1.1场景简介l海面、天空:整个程序的情景是大海中的航母,及... 阅读全文
posted @ 2010-08-11 00:35 ShaPherD 阅读(3596) 评论(6) 推荐(0) 编辑
摘要:1OSG基础知识ØOSG是OpenSceneGraphic的缩写,OSG于1997年诞生于以为滑翔机爱好者之手,Donburns为了对滑翔机的飞行进行模拟,对openGL的库进行了封装,osg的雏形就这样诞生了,1998年Donburns遇到了同样喜欢滑翔机和计算机图形学的RobertOsfield,从此RobertOsfield加入了osg小组的开发并一直担任开发小组的组长。&Os... 阅读全文
posted @ 2010-08-10 00:15 ShaPherD 阅读(37480) 评论(5) 推荐(5) 编辑
摘要:此模块分两部分完成,传输数据用socket,要使用socket在ppc上进行数据传输,就要谁让ppc自动连接gprs。其中套接字和gprs链接分别进行说明。一,应用程序在进行其它所需的WindowsSocketsAPI调用需要进行一次成功的WSAStartup()调用,然后就是套接字编程。分为服务器端和客户端。服务器:先建立套接字[代码]然后初始化一个SOCKADDR_IN结构体,然后用bind(... 阅读全文
posted @ 2010-07-25 14:18 ShaPherD 阅读(1866) 评论(0) 推荐(0) 编辑
摘要:以前没注意过多字节赋值问题,考虑的角度是充分利用 cpu 的 32 位带宽。一次复制 1 个字节和一次复制 4 个字节占用的 cpu 指令周期是一样的,既然我们的 cpu 能同时操作 32 位,为什么我们不能一次复制 4 个字节呢?如此一来,总运行的指令数将降低到原来的 1/4 !于是有下面代码(henix转自http://www.embedded.com/columns/technicalins... 阅读全文
posted @ 2010-05-19 22:37 ShaPherD 阅读(3453) 评论(0) 推荐(1) 编辑
摘要:Fun(a++)与fun(++a)Fun(++a)很好理解了,但是Fun(a++)的执行过程呢?我开始以为相当于fun(a){a++,………………}这样的话传值a不会变化,但是写了个demo才知道是相当于fun(a);a = a+1;看汇编代码,它是把a加一得操作压栈的最下面,所以执行完才会执行加一操作。-使用ty... 阅读全文
posted @ 2010-04-26 16:51 ShaPherD 阅读(345) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示