- 博客(6)
- 资源 (21)
- 收藏
- 关注
原创 也谈内联函数
<br />内联函数使用的 三个关键字为:<br />inline ,__inline ,__forceinline<br />在下面情况下编译器不使用内联编译:<br />1 函数或者调用者用选项/Ob0 编译的(Debug builds 默认选项)<br />2 函数或者调用者使用不同的异常处理类型(C++使用一种异常处理,结构化使用一种异常处理)<br />3 函数有可变的参数列表<br />4 函数使用内嵌汇编并且没有使用选项 /Og,/Ox,/O1,or /O2 中的一种编译。<br />5 函数
2011-01-30 12:04:00 723
原创 CreateWindow 和DestroyWindow
<br />上篇文章说要用一个线程来结束其他的线程,然后销毁窗口。<br /> <br /> <br />在这个"结束 线程“中调用 DestroyWindow 后 ,返回0 GetLastError() 为 5 拒绝访问错误!<br /> <br /> <br />上网找错,http://www.sowbug.org/mt/2004/04/destroywindow.html<br /> <br /> <br />原来线程的创建和删除和线程绑定在一起。<br /> <br /> <br />就是 创建窗口
2011-01-27 12:38:00 2250
原创 windows 的线程与消息
<br /> <br /> <br />1 线程与消息<br />windows 程序一般至少包含一个线程(主线程),其中有消息循环如下:<br /> <br /> <br />MSG msg;<br /> <br /> <br />while(GetMessage(...))<br /> <br /> <br />{<br /> TranslateMessage(...);<br /> <br /> <br /> DispatchMessage(...);<br /> <br />}<br /
2011-01-27 10:16:00 925
原创 程序调试日志-有符号 无符号
<br />原来代码:<br /> UINT size=m_vecContent.size();<br /> UINT i;<br /> UINT nTotalHeight=0,nTempHeight=0,nContentWndHeight=RECT_H(&m_rtData);;<br /> for(i=size-1;i>=0;i--)<br /> {<br /> myword_row *pRow = m_vecContent[i];<br /
2011-01-20 18:16:00 528
原创 程序调试日志
<br />第一个问题<br />今天遇到一个问题,在一个函数中出现泄漏的次数很多。这个函数是分配内存的函数(自己写的),所以要找出在什么地方调用忘记释放了的问题。<br />没有找到好的方法,后来想到既然调试器可以显示堆栈的调用,那么程序中也可以,搜索了一下。找到了一篇文章http://www.cnblogs.com/lbq1221119/archive/2008/04/18/1159956.html<br />使用内嵌汇编来显示调用的堆栈。Hook 分配内存,在hook 函数中调用显示堆栈调用。在退出的
2011-01-19 18:58:00 690
原创 程序调试
<br />1 解决内存泄露问题<br /> <br /> <br />我使用的方法:<br /> <br /> 在debug 模式下 定义 _CRTDBG_MAP_ALLOC<br /> 在代码中设置标志 _crtDbgFlag |=_CRTDBG_LEAK_CHECK_DF;<br /> 并且在*.c;*.cpp 文件头都定义 下面的宏<br /> #ifdef _DEBUG<br /> #define MYDEBUG_NEW new(_NORMAL_BLOCK,__FIL
2011-01-18 15:23:00 425
android-ndk-r15c-linux-x86_64-004
2018-06-14
android-ndk-r15c-linux-x86_64-001
2018-06-06
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人