- 博客(17)
- 资源 (14)
- 收藏
- 关注
原创 VS2008 写出的程序乱码问题
方法一:工程名=》右击属性=》依次点图中红框将字符集设置为“Use Multi-Byte Character Set": 方法二:在传递字符串前调用编码转换函数,如: CString strSend; char sendBuf[100]; //获得发送数据 GetDlgItemText(IDC_EDIT_SEND, strSend)
2013-01-27 18:30:16
550
转载 ADO封装类详解
用ADO编程有时候总觉得太过于繁琐,很多步骤应该得到封装。但是MFC没有封装它,网上有很多人都对ADO进行过封装,但是我介绍一个我觉得封装的还比较好的一个版本。这个版本的ADO封装类一共有CConnection,CRecordset,CCommand三个类。这三个类是别人封装的,我觉得封装的还是比较好的。可以到点击打开链接下载。 CConnection类
2013-01-04 19:16:36
649
原创 VC下利用ADO连接Access数据库
ADO(ActiveX Data Object)是Microsoft数据库应用程序开发的新接口,是建立在OLE DB之上的高层数据库访问技术,即使你对OLE DB,COM不了解也能轻松对付ADO,因为它非常简单易用,甚至比你以往所接触的ODBC API、DAO、RDO都要容易使用,并不失灵活性。本文详细地介绍在Visual C++开发环境下如何使用ADO来进行数据库应用程序开发,并给出示例代码
2013-01-04 19:13:33
1145
原创 MFC中使用数据库注意事项
最近做毕业设计,MFC中要用到数据库,对于我这个菜鸟,数据库接触的不是很多,而在这个项目中我主要使用了ADO动态链接库,现在就把项目中遇到的问题在这里总结一下,希望老鸟勿喷,也希望大家有什么好的意见提出来。1、首先介绍下什么是ADO?微软公司的ADO (ActiveX Data Objects) 是一个用于存取数据源的COM组件。它提供了编程语言和统一数据访问方式OLE DB的一个中间层。
2012-12-31 13:20:49
933
原创 两种求素数的方法
今天开始学习java,虽然有c\c++语言的基础,但是对于基础咱还是要把基础打的牢牢实实的,看到课后练习题有一道求素数的题,就想当初使用c++时自己是怎么解决的,结果发现当时自己解决这道题的时候根本就没注重算法的复杂度,导致如果求很多数的时候,速度就相当慢了,今天就把两种求素数的方法在这里写一下,告诫自己,以后不能只注重做题,而应该学会从一道题身上学到更多的东西。第一种算法就是最笨重的方法,由
2012-11-30 22:17:00
462
原创 我该如何选择
世事难料,造化弄人,有时候可能是上天总是喜欢和别人开玩笑吧!惨九淡十之后,迎来了属于我的黄金十一,但是这个十一月也着实让我过的很是惆怅和郁闷,这大概是这么大以来,第一次我可以自己决定我自己的事,事实上,这些事,也不得不由我自己决定,因为没有人赶去预测未来互联网的发展方向会是如何,或者是运营商的发展方向如何!面临的两个选择,考虑了好久好久,可是在心底里,依然有两股势力在做着斗争。是稳定的生活好还
2012-11-30 20:23:59
437
原创 塞翁失马,焉知非福
今天参加金山为期一个月的项目总评,表现的很是不尽如意,主要就是当问到那个数据结构和文件结构的设计时,之前想好的竟然都没能说出来,首先是文件,他说为什么不放在一个文件里去移动指针去读,这个是由于我扫描病毒的时候使用的是多线程扫描技术,所以为了考虑扫描的速度,必然不能通过操作文件指针去操作,因为这样相当于只能是一个线程去扫描文件了。还有他问我为什么程序中设计四条链表,首先我想病毒库的种类必然要比进程的
2012-08-13 23:38:56
594
转载 VC 界面窗口,静态分割后如何锁定分隔条或限制分隔条的移动范围
大家都知道,VC中可以动态或者静态的分割窗口(关于这点许多地方说的已经很清楚了,这里不做讨论)但是实际上,很多时候我们想要的只是静态的分割出窗口,并不想让别人移动改变这个比例,或者是需要限定某个分割出的窗口的范围(比如是小到多少之后就不能再变小了),关于这个问题许多书上都没有解释(PS:莫非是觉得太简单了,直接忽略么?orz...)本人研究了一下, 关于锁定分割大致有两种方法,而如何限制移动范
2012-08-07 20:45:18
1147
原创 MFC CListCtrl的用法.Style/插入、删除、选中数据及排序问题等
MFC CListCtrl的用法.Style/插入、删除、选中数据及排序问题资源属性里面有个sort设置排序的,如果不小心选了Ascending,那么你insertItem的顺序就就1,10,11,12,13,14,15,16,17,18,19,2,20,21....所以要注意.首先使用下面的语句设置CListCtrl的style:DWORD SetExtendedStyle( DWO
2012-07-22 11:22:57
1750
1
转载 深入思考全局静态存储区、堆区和栈区
在C++中,内存可分为系统数据区,自由存储区,文本区,const数据区,全局静态区,堆区和栈区。其中,系统数据区存放的是系统数据,我们是不能自由访问的,有时候windows系统会突然弹出一个消息框,内容是“内存不能为read”就是错误访问系统数据区的结果;自由存储区用来存放由C延伸而来的malloc()函数所分配的数据;文本区存放着我们的函数代码,我们调用函数时的底层行为就类似于先去操作一个指针,
2012-02-19 21:54:49
586
原创 volatile的作用
volatile关键字是一种类型修饰符,用它声明的类型变量表示可以被某些编译器未知的因素更改,比如操作系统、硬件或者其它线程等。遇到这个关键字声明的变量,编译器对访问该变量的代码就不再进行优化,从而可以提供对特殊地址的稳定访问。使用该关键字的例子如下:int volatile nVint;当要求使用volatile 声明的变量的值的时候,系统总是重新从它所在的内存读取数据,即使
2012-02-15 22:29:33
236
原创 MFC
MFC中有两类线程,分别称之为工作者线程和用户界面线程。二者的主要区别在于工作者线程没有消息循环,而用户界面线程有自己的消息队列和消息循环。 工作者线程没有消息机制,通常用来执行后台计算和维护任务,如冗长的计算过程,打印机的后台打印等。用户界面线程一般用于处理独立于其他线程执行之外的用户输入,响应用户及系统所产生的事件和消息等。但对于Win32的API编程而言,这两种线程是没有区别的,它们都
2012-02-15 22:22:06
379
原创 今天的一道整数逆序面试题
#if 1#include #include using namespace std;int sort(int );int main(){ int n; cout cin >> n; cout return 0;}int sort(int n){ int count = 0,b = 0; int i = 0; int a[1
2012-02-15 22:15:32
340
原创 VC中的OnDraw和Onpaint的区别
OnDraw与OnPaint有什么区别OnPaint是WM_PAINT消息的消息处理函数,在OnPaint中调用OnDraw,一般来说,用户自己的绘图代码应放在OnDraw中。OnPaint()是CWnd的类成员,负责响应WM_PAINT消息。OnDraw()是CVIEW的成员函数,没有响应消息的功能.当视图变得无效时(包括大小的改变,移动,被遮盖等等),Windows发送WM_PAINT
2012-02-10 22:04:56
862
原创 VC中的双缓冲画图
今天学习了VC中双缓冲画图,我个人理解双缓冲画图解决的问题有1、当需要画的图比较大或者复杂的时候,在视图上直接画可能较慢,出现卡的现象2、当在重绘的时候,视图会有我们所不期望的闪动为了解决该问题,所以有了双缓冲画图;因为我们在内存中画图要比在视图上画图快很多,因此我们会先把要画的图在内存中画好,然后调用bitblt把内存中的图画到当前视图实现双缓冲画图的步骤自己归纳为一下几个步
2012-02-10 22:03:29
778
原创 仅以此文章激励在拼搏路上的我
你好 自己, 2011年的后半年你已经步入了大三,这一学期里,你学到了多少东西,你自己心里都知道,自己处在什么样的水平自己也大概有个估计。 今天开始,每天写日记,记录自己每一天的收获和成长历程,坚持下来,就会胜利。 马上进入大三的下学期了,下学期,要为自己制定计划表,完成应该完成的任务,相信自己,你可以的。
2012-01-24 00:51:32
293
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人