C/C++/VC
文章平均质量分 75
Image_Graphics
这个作者很懒,什么都没留下…
展开
-
用V C++检测和隔离内存泄漏
用V C++检测和隔离内存泄漏 具有动态的分配和释放内存的能力是C/C++程序语言的重要特色之一。Visual C++ debugger 和 CRT库提供了一系列有效的检测和鉴定内存泄漏的工具。 设置内存泄漏检测 检测内存泄漏的基本工具是调试器和CRT调试堆函数。为了使用调试堆函数,在你的程序中你必须含有下面的说明: #define _CRTDBG_MAP_ALLOC#inclu转载 2006-11-13 12:27:00 · 1088 阅读 · 0 评论 -
四种线程间的通信(笔记)
有四种方法1.剪贴板 a.创建个ClipBoard的对话框应用程序,加两EditBox和两个Button发送接收。 b.具体代码: 发送端代码:if(OpenClipboard()){ CString str; HANDLE hClip; char *pBuf; EmptyClipboard(); GetDlgItemText(IDC_EDIT_SEND,str); hC原创 2007-04-12 09:59:00 · 1194 阅读 · 0 评论 -
三种线程间的同步
第一种 互斥对象MutexCreateMutex(,,)第一个参数为安全级别,NULL为缺省第二个参数为Owner,false为没有拥有者第三个参数为本互斥对象,NULL为匿名(如果不是匿名,则“命名对象互斥”,即只能有一个实例对象)返回一个HandleMutex和线程相关,内部有一个线程ID还有一个计数ID,看被引用了多少次。引用了多次就必须调用多少次ReleaseMutex(),如果当前线原创 2007-04-12 09:53:00 · 992 阅读 · 0 评论 -
auto_ptr
auto_ptr解析 auto_ptr是当前C++标准库中提供的一种智能指针,或许相对于boost库提供的一系列眼花缭乱的智能指针, 或许相对于Loki中那个无所不包的智能指针,这个不怎么智能的智能指针难免会黯然失色。诚然,auto_ptr有这样那样的不如人意,以至于程序员必须像使用”裸“指针那样非常小心的使用它才能保证不出错,以至于它甚至无法适用于同是标准库中的那么多的容器和一些算法,但即使转载 2007-07-06 10:39:00 · 1167 阅读 · 0 评论 -
调试
断点Trace DumpASSERT (VERIFY 发行版本)AssertValid() const 对象合法性 ASSERT_VALID 宏可以看到通过new分配的内存在显示信息时会报告出在哪一个文件的哪一行进行的new操作,而通过malloc分配的内存则仅仅是显示出内存泄露的信息而无法定位分配内存的程序位置。 此外需要在文件头部定义DEBUG_NEW宏才可以正确的跟踪new操作原创 2007-07-06 09:45:00 · 1292 阅读 · 0 评论 -
深入理解C语言指针的奥秘 [收藏]
指针是一个特殊的变量,它里面存储的数值被解释成为内存里的一个地址。 要搞清一个指针需要搞清指针的四方面的内容:指针的类型,指针所指向的 类型,指针的值或者叫指针所指向的内存区,还有指针本身所占据的内存区。让我们分别说明。 先声明几个指针放着做例子: 例一: (1)int*ptr; (2)char*ptr; (3)int**ptr; (4)int(*ptr)[3]; (5转载 2007-01-27 13:15:00 · 955 阅读 · 0 评论 -
C++的批判
C++批判的批判 1,typedef不必要?a,typedef提供了一层间接,面向对象语言中,接口掩盖了运行时不同具体类型间的差别,而typedef掩盖了编译时不同类型间的差别,却又不丧失类型安全性b,一般语言只能返回“值”,而typedef提供了返回“类型”的能力,这是模板元编程不可或缺的机制,除非模板元编程眼下也是不必要的2,导入在不同地点分别对#include,pr转载 2006-12-04 09:04:00 · 1171 阅读 · 0 评论 -
Effective C++
Effective C++ 50条款 第一章 从C转向C++条款1:尽量使用const和inline而不用#define条款2:尽量用,而不用条款3:尽量使用new和delete而不用malloc和free条款4:尽量使用C++风格的注释第二章 内存管理条款5:对应的new和delete要采用相同的形式条款6:析构函数里对指针成员调用delete原创 2006-11-25 17:11:00 · 1153 阅读 · 0 评论 -
MFC Hierarchy Chart
MFC Library Reference Hierarchy Chart The following hierarchy chart represents the MFC library.var ExpCollDivStr = ExpCollDivStr;ExpCollDivStr = ExpCollDivStr + "ctl00_LibFrame_原创 2006-11-30 09:54:00 · 3408 阅读 · 0 评论 -
Kingofark关于学习C++和编程的50个观点2003修订版
前 言Long long time ago, on a topic far far away……是的,很久很久以前,kingofark无心之中写了一篇关于学习C++和编程的发牢骚的文章。未曾料到的是,这篇文章被N个好心的网络同胞流传至今,以至于作者得意忘形的将文章简称为Ks50PV,在浅薄和浮躁中麻醉自己。某个醉生梦死的深夜,kingofark关上电脑,屋内一片墨黑,忽然发觉窗外的透彻和宁转载 2006-11-23 21:50:00 · 1189 阅读 · 0 评论 -
关于C++泛型编程的一些杂感
关于C++泛型编程的一些杂感刘未鹏(pongba)/文一些关于GP的思考或总结,没有太多的技术细节,主要是一些思想上的阐释。另外,文字比较乱,没有细细整理,凑合吧;-) 关于GP,可以说我是对它有很复杂的感情的,其实GP这种东西最好是建立在无类型语言上面,就C++0X目前对GP的支持的趋势来看,确实如此,auto/varadic templates这些特性的加入象征着C++ GP转载 2006-11-21 09:39:00 · 1565 阅读 · 1 评论 -
API函数
API函数 API函数(from AbortDoc to WSAWaitForMultipleEvents)AbortDoc|终止一项打印作业AbortPath|终止或取消DC中的一切路径AbortPrinter|删除打印机缓冲文件AbortSystemShutdowna|停止系统工作AccessCheck|检验客户原创 2006-11-22 20:24:00 · 4093 阅读 · 0 评论 -
MFC消息详解
MFC消息详解1. 怎样使用MFC发送一个消息用MFC发送一个消息的方法是, 首先,应获取接收消息的CWnd类对象的指针; 然后,调用CWnd的成员函数SendMessage( )。 LRESULT Res=pWnd->SendMessage(UINT Msg, WPARAM wParam, LPARAM lParam); pWnd指针指向目标CWnd类转载 2006-11-22 20:22:00 · 6382 阅读 · 2 评论 -
面向对象设计的11原则
面向对象设计是什么?都包含了哪些内容?它所带来的好处是什么?需要你为之付出些什么?在如今这个年代,问这些问题似乎显得很愚蠢,因为这年头几乎每位软件开发人员都知道如何使用某种面向对象编程语言。可是这个问题还是很重要,因为在我看来,绝大多数人在使用这些语言的时候并不知道为什么,而且也不知该如何最充分的运用它们。软件业曾经爆发过的所有变革里,其中曾经有两个派系如此广泛的深入人心,它们就是结构化编程和原创 2006-11-19 17:22:00 · 973 阅读 · 0 评论 -
C++代码优化方法总结
优化是一个非常大的主题,本文并不是去深入探讨性能分析理论,算法的效率,况且我也没有这个能力。我只是想把一些可以简单的应用到你的C++代码中的优化技术总结在这里,这样,当你遇到几种不同的编程策略的时候,就可以对每种策略的性能进行一个大概的估计。这也是本文的目的之所在。目录: 一. 优化之前 二. 声明的放置 三. 内联函数 四. 优化你的内存使用 五. 速度优化 六. 最后的求助一.原创 2006-11-13 12:24:00 · 1148 阅读 · 0 评论 -
在Visual C++中使用内联汇编
目录: 内联汇编的优缺点 内联汇编关键字 在__asm块中使用汇编语言 在__asm块中使用C/C++语言元素 寄存器使用 转跳 调用函数 一个例子 文档内容:一、内联汇编的优缺点 因为在Visual C++中使用内联汇编不需要额外的编译器和联接器,且可以处理Visual C++中不能处理的一些事情,而且可以使用在C/C++中的变量,所以非常方便。内联汇编主要用于如下场合: 1.转载 2006-11-13 12:25:00 · 854 阅读 · 0 评论 -
关键字 对齐 内存对齐
关键字 对齐 内存对齐 原作者姓名 Fang 正文什么是内存对齐 考虑下面的结构: struct foo { char c1; short s;转载 2006-11-13 12:26:00 · 1010 阅读 · 0 评论 -
STL 总结
STL(Standard Template Library)是C++标准庫的一部分(80%),是用C++ Template机制来表达泛型的庫。STL,成功的将算法与数据结构分离,在没有效率损失的前提下,得到了及大的弹性。六大组件容器(Container)算法(Algorithm)迭代器(Iterator)仿函数(Function object)适配器(Adaptor)空间配制器(alloc原创 2007-08-21 19:36:00 · 3817 阅读 · 1 评论