- 博客(38)
- 资源 (23)
- 收藏
- 关注
原创 Mini-XML库在VC6.0及其他VS环境下的使用
一、官方下载地址 Mini-XML官方网站 下载源码自行根据使用环境进行编译,同时下载PDF版doc已被查看。二、Windows平台下的使用 我使用测试环境是VC++6.0、Visual Studio 2008和Visual Studio 2010,由于Mini-XML使用标准C开发,当然其他C/C++开发环境同样可以通过相应配置使用该库。 如果需要在U
2015-06-06 15:14:22 2135
原创 VC6.0中在CSliderCtrl控件移动滑块动态的显示tooltip
最近做的一个项目中需要播放一个文件,需要在拖动“进度条”(用滑块控件模拟的)的过程中动态悬浮显示当前位置处播放文件内的特定内容。下面是使用CToolTipCtl类简单模拟该过程。1、使用ClassWizard给CSliderCtrl控件关联一个CSliderCtrl类型的成员变量m_ctlSlider,在包含该滑块的对话框类中添加一个CToolTipCtl类型的成员变量m_objToolTip
2013-09-05 21:33:06 4549 3
原创 Combination Sum II
Combination Sum IIGiven a collection of candidate numbers (C) and a target number (T), find all unique combinations in C where the candidate numbers sums to T.Each number in C may on
2012-08-23 02:55:49 2448
原创 Combination Sum
Combination SumGiven a set of candidate numbers (C) and a target number (T), find all unique combinations in C where the candidate numbers sums to T.The same repeated number may be c
2012-08-23 01:45:34 8846 3
原创 Permutations
PermutationsGiven a collection of numbers, return all possible permutations.For example,[1,2,3] have the following permutations:[1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], and [3,2,
2012-08-23 00:36:52 830
原创 Climbing Stairs
Climbing StairsYou are climbing a stair case. It takes n steps to reach to the top.Each time you can either climb 1 or 2 steps. In how many distinct ways can you climb to the top?/** 整理的
2012-08-14 20:50:19 661
原创 Anagrams
AnagramsGiven an array of strings, return all groups of strings that are anagrams.Note: All inputs will be in lower-case.什么是anagrams?/** 整理的提交代码 * 处理复杂度为O(n),n是字符串个数,但是其中有排序等步骤没有固
2012-08-14 19:24:10 921
原创 Add Two Numbers
Add Two NumbersYou are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers
2012-08-14 15:33:33 730
原创 Add Binary
Add BinaryGiven two binary strings, return their sum (also a binary string).For example,a = "11"b = "1"Return "100"./** 整理的提交代码 * 处理复杂度为O(max(n1,n2)) * 主要思路: * 1、先处理特殊情况,有其中一个为空,则
2012-08-13 23:33:01 2193
原创 4Sum
4SumGiven an array S of n integers, are there elements a, b, c, and d in S such that a + b + c + d = target? Find all unique quadruplets in the array which gives the sum of target.No
2012-08-13 19:14:22 1699
原创 3Sum Closest
3Sum ClosestGiven an array S of n integers, find three integers in S such that the sum is closest to a given number, target. Return the sum of the three integers. You may assume that each in
2012-08-13 14:07:06 3362
原创 3Sum
3SumGiven an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all unique triplets in the array which gives the sum of zero.Note:Elements in
2012-08-12 17:16:56 6588
原创 《C++标准程序库》第六章摘录与笔记
《C++标准程序库》第六章摘录与笔记6.1 容器的共通能力和共通操作6.1.1 容器的共通能力1、所有容器提供的都是“value语意”而非“reference语意”。容器进行的元素的安插操作时,内部实施的是拷贝操作,置于容器内。一次STL容器的每一个元素都必须能够被拷贝。如果你打算存放的对象不具有public copy构造函数,或者你要的不是副本(如你要的是被多个容器共同容纳的元素
2012-08-04 12:16:45 821
原创 赋值操作符重载函数形参规格
赋值操作符重载函数形参规格赋值操作符重载函数的形参基本都写为常量引用,返回值为引用。class A{ public: A(int data = 0) : m_data(data) {} ~A() {} A& operator=(const A& other) { if (this == &other) { return *this; } m_data
2012-08-01 15:08:43 1045
原创 拷贝构造函数形参规格
拷贝构造函数形参规格拷贝构造函数的形参基本都写为常量引用。#include using namespace std;class A{ public: A(int data = 0) : m_data(data) {} ~A() {} A(const A& other) { m_data= other.m_data; } void print() { co
2012-07-31 16:19:52 722
原创 《C++标准程序库》第五章摘录与笔记
《C++标准程序库》第五章摘录与笔记STL提供的六大组件:1、容器(containers):各种数据结构,用来存放数据,用来管理某类对象的集合。从实现的角度看,STL容器是一种class template。2、算法(algorithms):各种常用算法,用来处理群集内的元素。从实现的较短来看,STL算法是一种function template。3、迭代器(iterators):扮演
2012-07-31 15:02:07 1444
原创 《C++标准程序库》第四章摘录与笔记
《C++标准程序库》第四章摘录与笔记4.1 Pairs(对组)类pair可以将两个对象视为一个对象。容器类别map和multimap使用pairs来管理器键/值对。任何函数需返回两个值,也需要pair。4.2 Class auto_ptrC++标准程序库提供的auto_ptr是“一种”智能指针,帮助程序员防止“被异常抛出时发生资源泄露”。auto_ptr只是针对特定问题而设计的
2012-07-28 18:08:12 423
原创 内存中的数据对齐
内存中的数据对齐先看个例子:#include struct { short sA; short sB; short sC;}A;struct { long lA; short sB;}B;struct { char chA; int iB; char chC;}C;struct { char chA; char chB; int iC;}D;s
2012-07-17 20:47:01 681
原创 《C++标准程序库》第三章摘录与笔记
《C++标准程序库》第三章摘录与笔记3.2 头文件C++标准库在定义标准头文件时,对头文件扩展名进行了规范:根本没有扩展名。这种写法也适用于C标准头文件。但原来在C标准库中的头文件,必须采用前缀字符C,而不再是扩展名.h,在这些头文件中,每一个标识符都被声明在std命名空间中。这种命名方式的优点之一是可以区分旧头文件中的char* C函数,和新头文件中的标准C++ string类:
2012-07-14 22:40:24 544
原创 《C++标准程序库》第二章摘录与笔记
《C++标准程序库》第二章,摘录与笔记2.2.1 模板所谓“template”,是针对“一个或多个尚未明确的型别”所撰写的函数或类别。使用template时,可以显示或者隐式地将型别当做参数来传递。template并非一次编译便生出适合所有型别的代码,而是针对被使用的某个(或某组)型别进行编译。这导致一个重要的问题:实际处理template时,面对函数模板,你必须先提供他的某个实作
2012-07-14 18:00:07 686
原创 C++类对象布局
#include using namespace std;// 多重继承构造执行顺序:// 1、首先执行虚基类的构造函数,多个虚基类的构造函数按照被继承的顺序构造;// 2、执行基类的构造函数,多个基类的构造函数按照被继承的顺序构造;// 3、执行成员对象的构造函数,多个成员对象的构造函数按照申明的顺序构造;// 4、执行派生类自己的构造函数;// 5、析构以与构造相反的顺序执行;
2012-04-08 23:11:33 509
原创 OpenCV创建的视频播放器
OpenCV是在VS2005下配置的,新建的项目添加静态库highgui.lib即可。如果打不开视频,安装解码器试试,如Xvid。// 基于OpenCV的视频播放器(播放AVI格式)#include #include int g_slider_position = 0;CvCapture *g_capture = NULL;// 回调函数void OnTrackba
2011-06-16 22:19:00 3718 5
转载 (转)文档doc、视图view、框架frame相互之间的访问
1.文档类通常与数据的存取以及其它处理过程有关,而视主要用来表现文档数据的,但每个视必须依附于一个框架(在SDI中依附于MainFrame,在MDI中依附于ChildFrame),框架上可以放置工具栏、菜单等;2. 某种类型的文档、框架、视共同关联构成一个文档模板类(基类是CDocTemplate,其子类CSingleDocTemplate与CMutiDocTemplate分对应于SDI和MDI),文档模板类在WinApp的初始化时构造;3. 一个APP可以有N个文档模板,但SDI及MDI
2011-04-12 22:05:00 964
原创 全局钩子(hook鼠标键盘消息)
<br />生成DLL文件,模块定义文件为:<br /> <br />LIBRARY Hook<br /> <br />EXPORTS<br />SetHook@2实现文件如下。其中g_hWnd为所有进程共享,并且绕过了系统对可写数据的写时复制机制,维护的是一份拷贝。<br /> <br />// Hook.cpp#include <windows.h>HHOOK g_hMouse = NULL;HHOOK g_hKeyboard = NULL;// 为Hook.DLL创建一个新的节,将全局
2011-04-10 17:51:00 10097
原创 Hook键盘和鼠标消息
<br />/////////////////////////////////////////////////////////////////////////////// CInnerHookDlg message handlersHHOOK g_hMouse = NULL;HHOOK g_hKeyboard = NULL;HWND g_hWnd = NULL;LRESULT CALLBACK MouseProc( int nCode, // hook co
2011-04-10 15:55:00 1319
原创 替换制表符为空白符
<br />#include <stdio.h> #define TABINC 8 // tab length;int main() { int c, nb, pos; nb = 0; // number of blanks necessary pos = 1; // position of character in line while ( (c = getchar()) != EOF) { if (c == '/t') // tab
2011-03-22 12:05:00 756
原创 替换制表符为空白符
制表符的真实含义:它不是每次都移动8个空白字节,而是对从一行开始,或者是一次输入tab键结束,就开始为下一次做准备了。所以在一个tab键结束,此行的之前字节数刚好是8的倍数,一个tab键中的非空白字节可以通过已有字节模8得到。 假设tab键宽度(即停止位)为8 从行开始你键入abc,再敲tab键,此时光标就跑第9列,你就要用5个空格代替/t 从行开始你键入abcd,再敲tab键,此时光标就跑第9列,你就要用4个空格代替/t 依次类推.注意实际就是对八取模#include #define MAX
2011-03-22 11:31:00 1804
原创 颠倒字符串中的字符顺序
<br />// 颠倒字符串中的字符顺序 #include <stdio.h> #define MAXLINE 1000 // maximum input line length int getline(char s[], int lim);void reverse(char s[]);void swap(char *a, char *b);int main() { int len; // current line length char line[MAXL
2011-03-21 20:34:00 3625
原创 删除行末的空格及制表符,并删除全是空格的行
<br />// 删除行末的空格及制表符,并删除全是空格的行 #include <stdio.h> #define MAXLINE 1000 // maximum input line length int getline(char line[], int maxline);int remove(char s[]);// Print the largest input line int main() { int len; // current line lengt
2011-03-21 20:01:00 1059
原创 获取长度大于某个值的所有行
<br />// 获取最长文本行 #include <stdio.h> #define MAXLINE 1000 // maximum input line length #define LENLINE 80 // line lengthint getline(char line[], int maxline); void copy(char to[], char from[]); // Print the largest input line int ma
2011-03-21 19:29:00 697
原创 获取最长文本行
<br />// 获取最长文本行#include <stdio.h>#define MAXLINE 10 // maximum input line lengthint getline(char line[], int maxline);void copy(char to[], char from[]);// Print the largest input lineint main(){ int len; // current line length int max; /
2011-03-21 18:20:00 480
原创 获取最长文本行
<br />// 获取最长文本行#include <stdio.h>#define MAXLINE 10 // maximum input line lengthint getline(char line[], int maxline);void copy(char to[], char from[]);// Print the largest input lineint main(){ int len; // current line length int max; /
2011-03-21 17:57:00 428
原创 字符出现频率的直方图
// 字符出现频率的直方图#include #include #define MAXHIST 15 // max length of histogram#define MAXCHAR 128 // max different characters// Print horizontal histogram freq. of different charactersint main(){ int i, c; int len; // length of each bar
2011-03-20 21:17:00 841
原创 单词长度的垂直直方图
<br />// 单词长度的水平直方图#include <stdio.h>#define MAXHIST 15 // max length of histogram#define MAXWORD 11 // max length of a word#define IN 1 // inside a word#define OUT 0 // outside a wordint main(){ int i, j, c, state, nc;// int len; // len
2011-03-20 20:41:00 925 1
原创 单词长度的水平直方图
<br />空格、制表符或换行符标志着单词的结束。如果有一个单词(nc > 0)且它的长度小于允许的单词最大长度(nc < MAXWORD),这个程序将对相应的单词长度计数器加1(++wl[nc])。如果单词的长度超出了允许的单词最大长度(nc >= MAXWORD), 这个程序将对变量ovflow加1以记录长度大于或等于MAXWORD的单词的个数。<br />这个程序是官方给的题解,真正给出了单词长度的直方图。<br />// 单词长度的水平直方图#include <stdio.h>#define
2011-03-20 20:07:00 1005
原创 单词长度的水平直方图
对单词长度直方图理解有错,下面代码是直接打印出了每个单词的长度。真正的单词长度直方图应该是长度为某个数的单词数多少。就如图像处理中的灰度直方图,讲的是对应灰度的像素数多少。// 单词长度的水平直方图#include #define WORDS_NUBMER 100 // 输入的最多单词数#define IN 1 // inside a word#define OUT 0 // outside a wordint main(){ int i, j, c, state, nw;
2011-03-20 19:58:00 677
原创 从终端输入中统计数字,空白符,其他字符出现次数
// Count digits, white space, others#include int main(){ int c, i, nwhite, nother; int ndigit[10]; nwhite = nother = 0; for (i = 0; i = '0' && c
2011-03-20 16:07:00 537
原创 从终端输入中统计字符数、单词数、行数,并输出单词
<br /> <br />// Count characters, words, and lines in input// Output the words in different lines#include <stdio.h>#define IN 1 // inside a word#define OUT 0 // outside a wordint main(){ int c, nl, nw, nc, state; nl = nw = nc = 0; state =
2011-03-20 13:13:00 943
Mini-XML库(包含编译工程和文档)及其在VC++6.0下的使用示例
2015-06-06
SQLite权威指南
2012-01-01
奇异值分解(SVD)C语言源代码
2011-05-04
《C&C++深层探索》 姚新颜
2010-10-16
《精通Visual C++图像处理编程(第3版)》随书光盘
2010-04-30
VC++ 深入详解
2010-04-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人