摘要: 根据他人代码修改: 1 #!/bin/sh 2 ### BEGIN INIT INFO 3 # Provides: 4 # Required-Start: $local_fs $network $named $time $syslog 5 # Required-Stop: $local_fs $network $named $time $syslog 6 # Default-Start: 2 3 4 5 7 # Default-Stop: 0 1 6 8 # Description: shrpx proxy 9 ### END I... 阅读全文
posted @ 2014-01-25 14:02 生无所息 阅读(941) 评论(0) 推荐(0) 编辑
摘要: 这书也算是必修吧,尤其是我这种非科班人员,还是应该抽时间尽量学习一下。大致翻过一遍,习题非常多,尽力吧。##构造过程抽象* 为了表述认知,每种语言都提供了三种机制:基本元素;组合方式;抽象方法。* 前缀表示法,haskell中有学过,scheme中基本都是前缀表达,这使得表达式的可读性略微降低。* 声明变量:`(#define name value)`,和C中的宏声明一致,声明函数:`(#define (func ( para1,para2...) ())`;* 一般性求职规则是**树形累积**,其他的被称为**特殊形式**(如`define`语句)。* Scheme中多项式求值遵从**代换模 阅读全文
posted @ 2013-11-24 13:48 生无所息 阅读(2063) 评论(0) 推荐(0) 编辑
摘要: ### `highgui`的常用函数:`cv::namedWindow`:一个命名窗口`cv::imshow`:在指定窗口显示图像`cv::waitKey`:等待按键### 像素级* 在灰度图像中,像素值表示亮度,所以0表示黑色,255表示白色;* 图像在本质上都是一个矩阵,但是灰度图像的值就是一个矢量,而彩色图像则是多通道的向量,所以可以通过`image.at(row,colomn)[]`来取值,灰度就是`uchar`,常用的RGB通道则是`cv::Vec3b`,b代表ushort,s-short, i-int, f-float. at方法本身不做任何类型转换;* 矩阵可以声明为`cv::M 阅读全文
posted @ 2013-11-13 15:29 生无所息 阅读(2655) 评论(0) 推荐(1) 编辑
摘要: 简单封装了一下,不是很严谨。 1 /************************************************************************/ 2 /* INSTRUCTION: 封装ADO数据库相关操作 3 DETAILS: 只能在MFC下使用,因此使用了MFC的字符串类 4 尝试进行了深度封装,但是很多选项(如存储过程)被屏蔽了,适合小型项目使用。 5 NOTE: ADO数据库访问并不是线程安全的,多个线程公用一个Connection需要线程同步,推荐方法 6 是每个线程用一个单独的Connect... 阅读全文
posted @ 2013-09-12 14:45 生无所息 阅读(3082) 评论(0) 推荐(0) 编辑
摘要: 常用简写:namespace logging = boost::log;namespace src = boost::log::sources;namespace expr = boost::log::expressions;namespace sinks = boost::log::sinks;namespace attrs = boost::log::attributes;namespace keywords = boost::log::keywords;要点:结构图要牢记在心;trivial头文件可用于一般的控制台输出,日志等级被定义在改头文件;全局日志等级过滤使用loggi... 阅读全文
posted @ 2013-09-12 14:30 生无所息 阅读(14804) 评论(0) 推荐(0) 编辑
摘要: 替人写的C语言作业…介绍:程序名称:密码强度检测程序注释风格:doxygen测试环境:linux3.6, gcc4.7window7, vs2012已知问题:1. 算法与参考链接不一致,结果会有差别,详见代码注释。2. 在vs下可能会编译不通过,将后缀改为cpp就可以了。vs的C编译器实现对C90支持不佳,gcc4.5以上可以正常编译通过。 1 #ifndef CHECKPASS_H_INCLUDED 2 #define CHECKPASS_H_INCLUDED 3 4 /*! 5 * \brief 本程序用于检测密码强度 6 * \details 请根据提示输入密码,程序会自动输出... 阅读全文
posted @ 2013-06-24 12:28 生无所息 阅读(1054) 评论(0) 推荐(0) 编辑
摘要: 项目要用到数据库,本来打算用资料更多,名声更好的mysql的。卸载了自带的版本装了MariaDB 10.0,然后发现没有成熟的C++库可用(只有一个提交不久的libmariadb++),于是想回滚到原来的mysql5.5,但是悲剧的事情发生了…回滚出问题了。用的系统是Linux Mint14,不管是purge还是remove,然后重装MySQL的时候都会卡死…于是我直接放弃了MySQL,用上了据说国内很少用,但是企业中用的不少的PostGreSQL。 安装过程不说了,用源里面的资源就行,我现在的版本是9.2。C++库是libpqxx3-dev,官网有4.0.1的版本,我自己装了一下,链接的时候 阅读全文
posted @ 2013-05-26 16:58 生无所息 阅读(3604) 评论(0) 推荐(0) 编辑
摘要: 在网上看到有人贴过过程,照着做发现有点问题。这里自己写一下,以备后用。其实和一般库的编译过程差别不大,不过是第一次在命令行下使用cmake,所以出了点岔子。 首先是下载jrtplib和jthread,解压,放在任意文件夹内。先编译jthread,在shell中输入cmake CMakeList.txt,然后make,sudo make install, 库会被默认安装到/usr/local/lib下,而头文件则在/usr/local/include/jthread下。想要改变 安装路径,需要使用cmake -i来修改选项中的安装路径。理论上说,编译完jthread后,jrtplib在编译过程中 阅读全文
posted @ 2013-05-09 22:01 生无所息 阅读(434) 评论(2) 推荐(0) 编辑
摘要: 在MFC里面用了一下iniparser类,发现功能不健全,又重新封装了一下,删除了上一篇日志。MFC和boost的兼容性很烂,我为了省事专门给CString做了重载和特化。头文件(VS一直不支持export关键字,非常蛋疼): 1 /************************************************************************/ 2 /* Instruction: CIniParser类主要是封装了boost::property_tree::ini_parser中的几个 3 函数,用来操纵ini配置文件。ini文件用于比较简单的程序... 阅读全文
posted @ 2013-05-04 22:45 生无所息 阅读(1120) 评论(0) 推荐(0) 编辑
摘要: 不是所有的书都需要写笔记,比如代码大全这种就是需要经常读读,结合项目自我体验升华。但是对于某些涉及大量细节,或者繁杂的逻辑的书,如果只是顺序的往下读,基本上只是过眼即忘,更好的方法是仔细的看一遍,认真的做完习题,然后自己再总结一下脉络梗概。如果时间比较匆忙,习题没时间做也最好认真的做笔记,脑子里面有一条线,方便需要时迅速找到自己需要的内容。CSAPP这本书,主要涉及到极底层的操作系统相关的东西,充斥着大量细节和要素,以及大量习题,正是适合写读书笔记的好书,因此便成此文,以为始。程序被编译为二进制程序的过程:预处理器—编译器—汇编器—链接器,这就是所谓的"编译系统",预处理用 阅读全文
posted @ 2013-03-20 11:23 生无所息 阅读(795) 评论(0) 推荐(0) 编辑