`
greenmoon
  • 浏览: 47052 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论
文章列表
很久之前就想写个解析sql解析器,能够实现根据输入参数自动保留或或者忽略条件的类库,比如:select * from b where id=@id or name=@name,在有的情况下需要保留id而去除name条件,则直接输入的参数列表是·@id就可以了,name条件会自动被忽略掉,却一直苦于太难而没有勇气写下去,年初项目工期比较紧,需要这个功能的类库来简化数据库开发,被逼无奈,却发现不是很难,匆匆完成,经过一个项目的使用,程序没有任何问题,开发效率提高了很多,由于那个项目是使用c写的,在c#下使用很不方便,最近有点时间就移植到了c#上,测试一下,效果还不错,c版的只支持mysql,这次移植 ...
使用习惯了c#,java,在数据库异常时,使用try...catch就能方便的捕获异常。在使用php时就想当然的认为php5也能自动抛出异常,但是在实际开发过程中确实很失望,根本就不能捕获异常,无论是使用mysql还是mysqli扩展库,都不行。仔细分析一下,恍然大悟,php的扩展库是使用c开发的,而c语言根本就不支持异常,所有的错误都是根据返回的函数值来判断的,具体的错误信息采用额外的api函数来获取,这很类似于windows api的getlassterror函数,在php里我们可以使用mysql_errno和mysql_error来获取出错信息。
以前看到有人开发的带滚动条的大图无刷新显示框,不知道采用什么技术开发的,基本功能可以,但是滚动条长度有时会超出图形框,用户体验大打折扣。闲来无事时,决定自己动手写一个。技术很简单,就是从CWnd继承一个窗口类,根据图像大小自动显示滚动条,由于知道图形大小和窗口大小,滚动条的最大值就确定了,根据滚动条的位置就可以算出当前窗口影射到图像上的位置,然后创建内存dc,从图像上copy相应大小的图形到内存dc上,然后复制到窗口dc上,这样就大功告成,简单吧。代码如下: #if !defined(AFX_BAR_H__90C0CEA8_EB58_4CC7_A33A_CEC11E8527AE__INCL ...
base64是日常开发中经常使用的编码方式,在.net,java甚至php中都有简单的类库或函数直接调用,唯独c++中没有可用的资源,没有办法,谁让c++灵活呢,自己动手开发一个吧。 base64的原理很简单,无须赘述,google一下,一大堆,但是好用的有算法精妙的代码着实不多,自己动脑又太费神,找个成熟的其他语言的类翻译一下吧,嗯,c#的语法与c++很相似,ok,抄袭一下。不再啰嗦,直接看代码吧。   头文件代码如下(base64.h): #if !defined(AFX_BASE641_H__D58B5645_B438_43B6_8844_457ADE5F85CC__INCLUDE ...
Global site tag (gtag.js) - Google Analytics