摘要: 今天在wm上调试一段界面和后台数据之间的交互的代码,在线程中使用了临界区,在DEBUG模式下是正常的,在release模式居然报错,错误居然是某个类的析构函数,但是这个析构函数里面什么都没有做,果断去掉编译器的代码优化,然后正常了。。。。很是无语,这是又出现了一个问题,当一个线程进入另一个线程 的临界区时,两个线程同时挂起,那就输出看看怎么回事吧,加了几行测试语句,丫的,居然可以正常跑起来没有问题了。。。。。 阅读全文
posted @ 2011-06-02 11:54 yn_wang 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 树对于查找是非常方便的,例如stl中常用的map和set,尤其是对于大数据量的情况下,树的查找要比数组和链表要快的多。 本文主要是实现AVL树,AVL树是一种平衡树,就是在插入时通过某种调整使某个节点的左右子树的高度差不大于1。 具体算法: 当某个节点不符合条件时,以右子树高于左子树为例,此时需要向左循环以增加左子树的高度,这时需要将右子树代替当前节点,并且的右子树的左子树调整为当前节点的右子树,其他不变,但是有一种可能行,就行右子树的右子树比较矮(比左子树的高度小1),因此在进行调整之前先把右子树的节点向右循环进行调整。 整个树的操作都是以递归的方式实现的。 源码地址:http://fil. 阅读全文
posted @ 2011-04-20 22:01 yn_wang 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 收集了一些图片,放在一个文件夹中,文件名太混乱了,so,自己就用了点时间写了一个文件重命名的小程序 只给了一个主文件,比较简单的功能,没有做GUI。 通过命令行参数,最终实现的效果就是直接把文件夹或者几个文件拖到exe上,然后选择格式就可以了 代码地址http://files.cnblogs.com/iamagamer/FileRename.rar 阅读全文
posted @ 2011-04-10 23:36 yn_wang 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 终于想要实现一些东东了,先从简单的做起吧,先实现一个简单的四则运算器,假定输入的表达式正确(偷懒而已)。 首先需要一个栈结构,因为很简单,就随便写了一个template<class T>class CStack{private: struct CStack_Item{ CStack_Item* pPrev; T t; };public: CStack() : m_pTop(NULL), m_nsize(0){}; ~CStack(){};private: CStack_Item* m_pTop; //保存栈顶 int m_nsize;public: //出栈,如果栈为空,返回fal 阅读全文
posted @ 2011-03-29 00:15 yn_wang 阅读(246) 评论(0) 推荐(0) 编辑