摘要: 写了一个简易线程池, 原理简单介绍下,就是设置一个任务队列queue,用来放要执行的函数,还有一个线程数组vector,用来存放所有的线程。 线程创建以后就存放在相应的vector里,空闲的线程去queue里去取要执行的函数地址,在run函数中执行,假如一个线程的run函数执行好后, 发现队列没有任 阅读全文
posted @ 2020-05-07 23:36 十面埋伏但莫慌 阅读(1884) 评论(0) 推荐(0) 编辑
摘要: 1、查看所有类的析构函数是否已经被调用。有的子类的析构函数是否被定义成virtual 2、_CrtDumpMemoryLeaks()使用这个函数可以在函数体{}结束时,打印出未释放的地址,点击相应的警告可以跳转到相应代码。 阅读全文
posted @ 2019-08-27 11:24 十面埋伏但莫慌 阅读(235) 评论(0) 推荐(0) 编辑
摘要: 最近学习了MFC多线程的使用, 写了一个继承CWinThread类的类MyThread; 在头文件开头用#define定义一个线程函数入口地址(会在下面定义代码中写出) 在类的开头加上IMPLEMENT_DYNCREATE(MyThread, CWinThread) 继承的子类里面必须重写两个函数 阅读全文
posted @ 2019-08-27 11:05 十面埋伏但莫慌 阅读(8543) 评论(2) 推荐(2) 编辑
摘要: 最近在一个通过MFC做一个界面,通过这个界面可以对布置在另一台服务器上的数据库MySQL、SQl Server、Oracle进行增删创建表的操作。其中我通过ADO很快就完成了对MySQL和SQL Server的控制。但是Oracle的连接就麻烦很多,我完成这个项目的大部分的时间都在研究怎么与Orac 阅读全文
posted @ 2019-08-06 18:00 十面埋伏但莫慌 阅读(1945) 评论(0) 推荐(0) 编辑
摘要: 转载:https://www.cnblogs.com/lanqingzhou/p/8192808.html 阅读全文
posted @ 2019-07-22 08:49 十面埋伏但莫慌 阅读(102) 评论(0) 推荐(0) 编辑
摘要: const 的全局变量是储存在一个只读数据段中,虽然你可以定义一个指向它的指针,却会在运行时,在对该地址赋值的时候发生运行错误,而局部的const变量是储存在栈中的,离开作用域后同样会被释放,并且可以对指向该地址的指针进行赋值操作,但是不论是全局的const变量还是局部的const变量,都是以一个字 阅读全文
posted @ 2019-05-29 20:24 十面埋伏但莫慌 阅读(1739) 评论(0) 推荐(0) 编辑
摘要: 选择排序的执行过程为每次循环遍历数组找出最小(或最大)的数,将其放在数组的有序数列的最后面,每次第i次遍历查找要执行N-i个单位时间,然后要执行N次,故时间复杂度为O(N^2),很简单,比较适合较小的数列的排序。 选择排序的代码selection_sort.cpp会在下面的完整代码中呈现。 而堆排序 阅读全文
posted @ 2019-05-23 10:08 十面埋伏但莫慌 阅读(1562) 评论(3) 推荐(0) 编辑
摘要: 插入排序的步骤如下: 1. 设定待排列数组的第一位为已知有序序列,指针指向第一位。 2. 若数组长度大于1,则指针从指向第二位开始,将指针向后移动一位,每次移动之前,将指针所指位置与指针所指位置之前的有序数列进行比对,经过若干次交换后获得新的有序数列。重复本步骤直至整个数组为有序数列。 代码如下: 阅读全文
posted @ 2019-05-20 12:35 十面埋伏但莫慌 阅读(190) 评论(0) 推荐(0) 编辑
摘要: detach()和join(); 假设我们有一个线程t, 当我们定义好线程的入口函数后(thread t(FUNC)), 接下来使用t.detach();来开始线程的话。这个线程t跟我们的主线程main就会并行执行,这两个线程就会互相争抢资源。并且当主线程执行完毕后,不会等待t线程执行结束,整个程序 阅读全文
posted @ 2019-05-15 15:55 十面埋伏但莫慌 阅读(536) 评论(0) 推荐(0) 编辑
摘要: 1992年,Donoho等人首先提出了小波阈值收缩去噪。其提出的阈值公式如下: (1) 上式中,σ噪声的标准偏差,N则是噪声数据的长度。这个公式后来被证明,当N趋向于无限大的时候,图像中大部分细节部分都会被抹去,然而这个公式仍然被大量地应用。 随后,Chang等人提出了一个新的阈值函数,该方法假设小 阅读全文
posted @ 2019-04-10 11:50 十面埋伏但莫慌 阅读(1560) 评论(0) 推荐(0) 编辑