精品转载
清水迎朝阳
多年windows下c++客户端开发,或多或少踩了很多坑,积累了一些经验
展开
-
Sizeof与字符串
Sizeof与字符串 1.以字符串形式出现的,编译器都会为该字符串自动添加一个0作为结束符 如在代码中写 "abc",那么编译器帮你存储的是"abc/0" 2."abc"是常量吗?答案是有时是,有时不是。 不是常量的情况:"abc"作为字符数组初始值的时候就不是,如 char str[] = "a转载 2012-09-18 09:32:51 · 19808 阅读 · 4 评论 -
C++相互依赖的头文件的组织
下述用C++写2个类互相包含时头文件的组织方法。比如,一个类为cat,一个类为dog,要求cat具有成员变量 dog* doggydog具有成员变量 cat* catty其实4个文件可以搞定://cat.h#pragma onceclass dog;class cat{ public: dog *doggy转载 2013-03-27 16:02:54 · 1640 阅读 · 0 评论 -
Debug和Release区别
最近写代码过程中,发现 Debug 下运行正常,Release 下就会出现问题,百思不得其解,而Release 下又无法进行调试,于是只能采用printf方式逐步定位到问题所在处,才发现原来是给定的一个数组未初始化,导致后面处理异常。网上查找了些资料,在这 罗列汇总下,做为备忘~一、Debug 和 Release 的区别 Debug 通常称为调试版本,它包含调试信息转载 2013-04-01 23:04:44 · 864 阅读 · 0 评论 -
调用约定(Calling convention)
The _stdcall and __stdcall keywords force the compiler to generate function calls using the Standard calling convention. Functions must pass the correct number and type of arguments; this is unlike no转载 2013-04-01 22:37:46 · 1856 阅读 · 0 评论 -
托盘编程
关键字/核心提示:托盘,图标,程序,设计, 在Windows操作系统中,任务栏的右边(托盘)会常驻几个图标,如输入法切换图标、音量控制图标等,此外我们还经常碰到具有托盘图标的软件,如金山词霸、实时监测功能的杀毒软件等。这些软件在后台运行,通常不占用太多的屏幕资源,只在通知栏上放一个小小的标志,必要时我们可以通过用鼠标点击图标对其进行选单操... 在Windows转载 2013-01-25 16:58:34 · 1040 阅读 · 0 评论 -
二叉树(binary tree)
二叉树的定义 二叉树的定义:树的度为2的树。 二叉树的递归定义:二叉树或者是一棵空树,或者是一棵由一个根结点和两棵互不相交的左子树和右子树所组成的非空树,而左右子树又都是一棵二叉树。二叉树的性质 1.第i层上至多有2的i-1次方个结点。 2.深度为h的二叉树至多有2的h次方减1个结点。 3.每一层都满的二叉树称为满二叉树,只在最后一层右边缺若干个结转载 2012-11-14 15:13:45 · 790 阅读 · 0 评论 -
散列查找 哈希表 Hash
散列查找 哈希表 Hash散列查找的基础知识 散列(Hash)同顺序、链接和索引一样,是存储集合的又一种方法。 不同的是,散列表(哈希表)在元素的存储位置和它的关键字之间建立了一个对应关系。 散列存储的基本思想是:以每个元素的关键字K为自变量,通过一个函数(称为哈希函数或散列函数)计算出函数值,把这个值(哈希地址或散列地址)解释为一块连续存储空间(即数组空间)的单元地址(即下转载 2012-11-14 14:56:03 · 4208 阅读 · 0 评论 -
栈 Stack
栈又称堆栈,是一种运算受限的线性表,其限制是仅允许在表的一端进行插入和删除运算。 把对栈进行运算的一端称为栈顶,另一端称为栈底。 向一个栈插入新元素称为入栈或进栈,Push;从一个栈删除元素称为退栈或出栈,Pop。 因为后进栈的元素必定先出栈,所以又把栈称为后进先出表(Last In First Out, LIFO)。栈的顺序存储结构栈的顺序存储结构需要使用一个数组和一个转载 2012-11-14 15:22:14 · 776 阅读 · 0 评论 -
聚类算法
转载自 论文 《聚类算法研究》翻译 2012-11-14 10:25:30 · 843 阅读 · 0 评论 -
C++哈希函数应用实例
#include "stdafx.h" #include #include #include using std::vector; using stdext::hash_map;typedef unsigned int UINT;class hash_wchar_t { public: // 以下两个变量我也不是很明白究竟是干嘛的转载 2012-11-07 15:17:02 · 6065 阅读 · 0 评论 -
C++ STL中哈希表 hash_map介绍
C++ STL中哈希表 hash_map介绍0 为什么需要hash_map用过map吧?map提供一个很常用的功能,那就是提供key-value的存储和查找功能。例如,我要记录一个人名和相应的存储,而且随时增加,要快速查找和修改:岳不群-华山派掌门人,人称君子剑张三丰-武当掌门人,太极拳创始人东方不败-第一高手,葵花宝典...这些信息如果保存下来并转载 2012-11-07 15:13:31 · 1137 阅读 · 0 评论 -
KMP算法
在介绍KMP算法之前,先介绍一下BF算法。一.BF算法 BF算法是普通的模式匹配算法,BF算法的思想就是将目标串S的第一个字符与模式串P的第一个字符进行匹配,若相等,则继续比较S的第二个字符和P的第二个字符;若不相等,则比较S的第二个字符和P的第一个字符,依次比较下去,直到得出最后的匹配结果。 举例说明: S: ababcababa P: ababa转载 2012-10-15 14:27:35 · 826 阅读 · 0 评论 -
Radio控件的使用
方法一:Radio Button成组使用时,只需保证在添加控件时资源号连续,并且第一个Radio Button的属性中Group被选中即可. 这样就可以给这一组控件添加成员变量使用 例: 1.建立一个基于对话框的应用程序,添加三个Radio Button,和一个Button 选中第一个Radio Button属性中的Group翻译 2013-04-05 08:09:10 · 6740 阅读 · 0 评论