一.使用同步定时器 这个示例程序通过展示如何在一个定时器执行一个阻塞等待. //makefile #---------------------------------------------------------- #makefile helloworld测试用例 # # # # #----------------------------------------------------------- ggg=g++ exe=asiotimer #所有的.o文件写在这里 obj = asioti…
做一个简单的qml计时器和定时器,左键触发计时,右键触发定时 GitHub:八至 作者:狐狸家的鱼 本文链接:QML学习笔记(六)- 简单计时器和定时器 左键点击按钮,触发计时器,中键可以暂停计时,同时如果要清零,再次点击左键. 右键打开时间输入与告警信息输入弹出窗口,时间输入有正则验证,只能输入数字,并且时间的:只能在英文半角下输入,如果时间和告警信息未输入,会弹出警告. main.qml: /* author:狐狸家的鱼 date:20181226 */ import QtQuick 2.1…
本系列文章使用boost_1.58.0版本. 一.欢迎使用boost C++库 boost致力于提供一个免费的.便携的源代码级的库. 我们重视那些与C++标准一起工作良好的库.boost库将要成为一个应用广泛的库,成为应用程序可以依赖的平台.boost证书估计商业和非商业机构使用它. 我们的目标是建立已存在的练习而且提供对于库具体实现的引用以至于boost库适合于最后的标准.十个boost库已经包含在C++标准委员会的TR1而且将要被包含在即将到来的C++标准版本中.更多的boost库将目标放在…
一.背景 项目中许多地方需要对字符串进行匹配,比如根据指定的过滤字符串来过滤文件名.刚开始是排斥使用boost库的,第一,我不熟悉boost库:第二,如果引入第三方库,就会增加库的依赖,这样的后果是,要么打包程序时,打包动态库,要么直接使用静态库编译,会使增大程序的大小. 刚开始是尝试自己写模糊匹配算法,很简单,就只支持_和%,这两个通配符,然后发现Linux下有一个fnmatch的函数,就是进行模糊匹配的,它支持shell通配符. 但是到最后发现,当需要区别很相似的字符串时,模糊匹配就不行了,…
学习及使用Boost库已经有一段时间了,Boost为我的日常开发中带来了极大的方便,也使得我越来越依赖于boost库了.但boost功能太多,每次使用还是得翻看以前的 资料,所以为了以后可以更方便的使用,在此对常用的功能作一个总结,也希望以此与大家共勉. boost库下载,Svn地址: http://svn.boost.org/svn/boost/trunk 编译源码 编译boost库自带脚本解释工具: 使用vs自带命令行工具Visual Studio 命令提示(2010),运行bat脚本boo…
noncopyable 大家都知道定义一个空类的时候,它实际包含了构造函数,拷贝构造函数,赋值操作符和析构函数等. 这样就很容易产生一个问题,就是当用户调用A a(“^_^") 或者A c="^_^" 时会发生一些意想不到的行为,所以很多时候我们需要禁用这样的用法. 一种方法就是把拷贝构造函数和赋值操作符显式的定义为private,但是这样需要很多代码. 于是boost库为大家提供了一个简单的方法:只需要将类继承于noncopyable就可以了. #include "…
前面创建的UDP服务器和客户端,都是同步的方式,也就是说当接收数据时,不能参与别的事情执行的.如果在一个只有界面线程的程序里,又不想创建多线程,导致复杂程度的增加,在这种情况之下,我们还有一个方案可以选择,就是创建一个异步的UDP服务器或客户端,这样既有单线程的简单性,也可以让客户随便操作界面的快速响应的特性.在boost库里使用io_service对象来实现异步是轻而易举的事情,因为封装的接口简单.明了.具体的代码如下: // boost_028.cpp : Defines the entry…
timer类 #include <boost\timer.hpp> #include "iostream" using namespace std; int _tmain(int argc, _TCHAR* argv[]) { boost::timer t; cout<<<<"h"<<endl; //596.523h cout<<"min time span: "<<t.el…
写过C++的人都知道申请和释放内存组合new/delete,但同时很多人也会在写程序的时候忘记释放内存导致内存泄漏.如下所示: int _tmain(int argc, _TCHAR* argv[]) { ]; try{ strcpy(p,"hello"); } catch(int &e) { //.... ; } delete p; ; } 如果程序发生error而异常退出不会执行到最后的delete p,从而导致内存泄漏.于是程序员必须在所有分支都加上delete语句释放内…
# 用PCA降维 #计算协方差矩阵 import numpy as np X=[[2,0,-1.4], [2.2,0.2,-1.5], [2.4,0.1,-1], [1.9,0,-1.2]] np.cov(np.array(X).T) #计算特征向量 import numpy as np w,v=np.linalg.eig(np.array([[1,-2],[2,-3]])) print w,v # 降维可视化 %matplotlib inline import matplotlib.pyplo…