<?xml version="1.0" encoding="utf-8" ?><rss version="2.0"><channel><title><![CDATA[Will的专栏]]></title><description><![CDATA[C/C++]]></description><link>https://blog.youkuaiyun.com/lwwworkspace</link><language>zh-cn</language><generator>https://blog.youkuaiyun.com/</generator><copyright><![CDATA[Copyright &copy; lwwworkspace]]></copyright><item><title><![CDATA[用MFC编写访问HTTPS程序之忽略无效证书验证]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/6697194</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/6697194</guid><author>lwwworkspace</author><pubDate>Thu, 18 Aug 2011 10:14:51 +0800</pubDate><description><![CDATA[最近需要写一个与HTTPS通讯的APP，但是由于本人是第一次编写这样的网络程序，所以忽略无效证书验证这个问题一直困扰了1-2天，由于在网上的资料基本上都是说同样的问题，但是忽略了一点没有说明的，就是要Query服务器的状态，经过本人不断的查资料，结果终于找到了答案，下面是一些整理]]></description><category></category></item><item><title><![CDATA[MFC Radio按钮组的使用例子]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/6054354</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/6054354</guid><author>lwwworkspace</author><pubDate>Sat, 04 Dec 2010 09:57:00 +0800</pubDate><description><![CDATA[<br />首先我们要完成一个功能，在一个添加新用户的场景里，通过Radio按钮来判断用户选择的是管理员还是普通用户。<br /> <br />要使用Radio组的功能首先我们必须作如下设置：<br /> <br />1、2个Radio按钮的ID号不同，但是他们的tab顺序必须是按顺序排列的，这些都可以在Resource.h文件里面查看到。<br />      如：Radio1  ID：IDC_RADIO_ADMIN<br />            Radio2  ID：IDC_RADIO_USER<b]]></description><category></category></item><item><title><![CDATA[赫夫曼树 一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5925826</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5925826</guid><author>lwwworkspace</author><pubDate>Thu, 07 Oct 2010 21:37:00 +0800</pubDate><description><![CDATA[<br />HuffmanTree.h<br /> <br />#ifndef HUFFMANTREE
#define OK	1
#define ERROR	0
typedef void* ElemType;
typedef char** HuffmanCode;
typedef struct HTNode
{
	ElemType weight;
	unsigned int parent, lchild, rchild;
}*HuffmanTree;

int init_Huffman]]></description><category></category></item><item><title><![CDATA[孩子兄弟法 建立树和森林]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5902531</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5902531</guid><author>lwwworkspace</author><pubDate>Thu, 23 Sep 2010 23:38:00 +0800</pubDate><description><![CDATA[CSTree.h#ifndef CSTREE_H_H
#define OK	1
#define ERROR	0
#define MAX(x,y)	(x) > (y) ? (x) : (y)
typedef void* ElemType;
typedef struct CSNode
{
	ElemType data;
	struct CSNode *first_child, *next_sibling;
}*CSTree;
int init_CSTree(CSTree);
int mak]]></description><category></category></item><item><title><![CDATA[二叉树 一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5881966</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5881966</guid><author>lwwworkspace</author><pubDate>Mon, 13 Sep 2010 22:14:00 +0800</pubDate><description><![CDATA[<br />BiTree.h<br /> <br />#ifndef BITREE_H_H
#define OK	1
#define ERROR	0
typedef char ElemType;
typedef struct BiLNode
{
	ElemType data;
	struct BiLNode *lchild;
	struct BiLNode *rchild;
}BiTree;
int init_BiTree(BiTree*);
int make_node(BiLNode]]></description><category></category></item><item><title><![CDATA[广义表 一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5869027</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5869027</guid><author>lwwworkspace</author><pubDate>Tue, 07 Sep 2010 17:19:00 +0800</pubDate><description><![CDATA[SString.h#ifndef SSTRING_H_H
#define OK	0
#define	ERROR	-1
#define MAX_LENGTH	255
typedef unsigned char SString[MAX_LENGTH + 1];	//第0个位置存放串的长度
int sstr_assign(SString, const char*);
int sstr_print(SString);
int sstr_copy(SString, SString);
int sstr]]></description><category></category></item><item><title><![CDATA[十字链表 一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5855869</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5855869</guid><author>lwwworkspace</author><pubDate>Wed, 01 Sep 2010 16:03:00 +0800</pubDate><description><![CDATA[<br />CrossList.h<br /> <br />#ifndef CROSSLIST_H_H
#define OK	1
#define ERROR	0
typedef int ElemType;
typedef struct OLNode
{
	ElemType data;
	int i, j;
	struct OLNode *right, *down;
}OLNode;

typedef struct
{
	OLNode *rhead, *chead;
	int mu]]></description><category></category></item><item><title><![CDATA[顺序存储 矩阵 一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5816650</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5816650</guid><author>lwwworkspace</author><pubDate>Mon, 16 Aug 2010 21:51:00 +0800</pubDate><description><![CDATA[Matrix.h#ifndef MATRIX_H_H
#define OK	0
#define ERROR	-1
#define MAX_DIM_SIZE	8
typedef int ElemType;
typedef struct
{
	ElemType *base;		//矩阵基地址
	int dim;		//矩阵维数
	int *bounds;		//保存维界值。如A[3][2]  bounds[0] = 3, bounds[1] = 2
	int *constants;		//保]]></description><category></category></item><item><title><![CDATA[MFC 画时钟刻度]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5813442</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5813442</guid><author>lwwworkspace</author><pubDate>Sun, 15 Aug 2010 12:38:00 +0800</pubDate><description><![CDATA[首先建立MFC Application 选择 simple document  然后在OnDraw函数里面添加如下代码。void CClockMFCView::OnDraw(CDC* pDC)
{
	CClockMFCDoc* pDoc = GetDocument();
	ASSERT_VALID(pDoc);
	// TODO: add draw code for native data here

	//思路：先从圆心画线到每分钟的点上，
	//然后再用函数画一个无线条颜色的圆盖在上面
]]></description><category></category></item><item><title><![CDATA[KMP算法代码]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5807968</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5807968</guid><author>lwwworkspace</author><pubDate>Thu, 12 Aug 2010 21:24:00 +0800</pubDate><description><![CDATA[<br />KMP.H<br /> <br />#ifndef KMP_H_H
#define OK	0
#define	ERROR	-1
#define MAX_LENGTH	255
typedef unsigned char SString[MAX_LENGTH + 1];	//第0个位置存放串的长度
int sstr_assign(SString, const char*);
int sstr_print(SString);
int print_nextval(SString, int*]]></description><category></category></item><item><title><![CDATA[串的模式匹配算法(求子串位置的定位函数,适合一般字符串定位)]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5804728</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5804728</guid><author>lwwworkspace</author><pubDate>Wed, 11 Aug 2010 16:54:00 +0800</pubDate><description><![CDATA[<br />SString.h<br /> <br />#ifndef SSTRING_H_H
#define OK	0
#define	ERROR	-1
#define MAX_LENGTH	255
typedef unsigned char SString[MAX_LENGTH + 1];	//第0个位置存放串的长度
int sstr_assign(SString, const char*);
int sstr_index(SString, SString, int);
int sstr_]]></description><category></category></item><item><title><![CDATA[堆分配串一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5804388</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5804388</guid><author>lwwworkspace</author><pubDate>Wed, 11 Aug 2010 15:31:00 +0800</pubDate><description><![CDATA[<br />HString.h<br /> <br />#ifndef HSTRING_H_H
#define	OK	0
#define ERROR	-1
typedef struct
{
	char *ch;
	int length;
}HString;
int hstr_assign(HString*, const char*);
int hstr_print(HString*);
int hstr_length(HString*);
int hstr_compare(HStrin]]></description><category></category></item><item><title><![CDATA[定长顺序串一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5802598</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5802598</guid><author>lwwworkspace</author><pubDate>Tue, 10 Aug 2010 21:55:00 +0800</pubDate><description><![CDATA[SString.h#ifndef SSTRING_H_H
#define OK	0
#define	ERROR	-1
#define MAX_LENGTH	255
typedef unsigned char SString[MAX_LENGTH + 1];	//第0个位置存放串的长度
int sstr_assign(SString, const char*);
int sstr_print(SString);
int sstr_copy(SString, SString);
int sstr]]></description><category></category></item><item><title><![CDATA[链式队列一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5801767</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5801767</guid><author>lwwworkspace</author><pubDate>Tue, 10 Aug 2010 16:03:00 +0800</pubDate><description><![CDATA[<br />LinkQueue.h<br /> <br />#ifndef LINKQUEUE_H_H
#define	OK	0
#define	ERROR	-1
typedef int type;
typedef struct QNode
{
	type date;
	struct QNode *next;
}QNode;

typedef struct
{
	QNode *front;
	QNode *rear;
}LinkQueue;
int init_linkQueue]]></description><category></category></item><item><title><![CDATA[顺序循环队列一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5799595</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5799595</guid><author>lwwworkspace</author><pubDate>Mon, 09 Aug 2010 18:29:00 +0800</pubDate><description><![CDATA[<br />CircularQueue.h<br />#ifndef SQQUEUE_H_H
#define OK		0
#define ERROR		-1
#define MAX_SIZE	5
typedef int type;
typedef struct SNode
{
	type date[MAX_SIZE];
	int front;		//队头指针
	int rear;		//对尾指针
	int queue_length;
	int queue_size;
}SqQueue]]></description><category></category></item><item><title><![CDATA[顺序队列一些操作]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/5799512</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/5799512</guid><author>lwwworkspace</author><pubDate>Mon, 09 Aug 2010 17:53:00 +0800</pubDate><description><![CDATA[<br />SqQueue.h<br />#ifndef SQQUEUE_H_H
#define OK		0
#define ERROR		-1
#define MAX_SIZE	100
typedef int type;
typedef struct SNode
{
	type date[MAX_SIZE];
	int front;		//队头指针
	int rear;		//对尾指针
	int queue_length;
	int queue_size;
}SqQueue;
]]></description><category></category></item><item><title><![CDATA[explicit一些用途]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/6502881</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/6502881</guid><author>lwwworkspace</author><pubDate>Sun, 08 Aug 2010 11:28:00 +0800</pubDate><description><![CDATA[Code:    explicit是在类里面声明构造函数的，它的作用是可以防止对象间的隐式转换。被声明为explicit的构造函数通常比其非explicit更受欢迎，因为它们禁止编译器执行非预期的类型转换。除非有一个好理由允许构造函数被用于隐式类型转换，否则我会把它声明为explicit。          例如：          class Dog       ]]></description><category></category></item><item><title><![CDATA[C++多态性一些总结]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/6502880</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/6502880</guid><author>lwwworkspace</author><pubDate>Sun, 08 Aug 2010 11:24:00 +0800</pubDate><description><![CDATA[Code:    #include          using namespace std;                   /*            总结多态性几个要点：            1、一定要有虚函数，非虚函数不能实现多态            2、子类一定要改写父类的虚函数，不改写不能实现多态            3、必须用]]></description><category></category></item><item><title><![CDATA[dynamic_cast 的一些用途]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/6502879</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/6502879</guid><author>lwwworkspace</author><pubDate>Sun, 08 Aug 2010 11:23:00 +0800</pubDate><description><![CDATA[Code:    要使用dynamic_cast动态类型转换，必须满足下面条件：          1、基类至少要有一个虚函数          2、需要多态性          3、编译器打开RTTI检查                   dynamic_cast功能：          当某些情况下不能使用运行时多态的时候，就可以用dynamic_]]></description><category></category></item><item><title><![CDATA[简单迷宫(链栈)]]></title><link>https://blog.youkuaiyun.com/lwwworkspace/article/details/6502878</link><guid>https://blog.youkuaiyun.com/lwwworkspace/article/details/6502878</guid><author>lwwworkspace</author><pubDate>Sun, 08 Aug 2010 11:21:00 +0800</pubDate><description><![CDATA[Stack.hCode:    #ifndef STACK_H_H       #define OK  0       #define ERROR   -1             typedef struct Point       {           int x;           int y;       }Point;   ]]></description><category></category></item></channel></rss>