摘要: 总结归纳一点C++类的知识,参考《C++ primer》,温故而知新~构造函数的初始化列表: 没有默认构造函数的类类型的成员,以及const或引用类型的成员,不管是哪种类型,都必须在构造函数初始化列表中进行初始化; 成员初始化的次序是定义成员的次序,不是初始化列表的顺序;显示指定inline函数,可在类定义体内部指定一个成员为inline,或者在类定义体外部的函数定义上指定为inline;在声明和定义处指定inline均为合法。只有当类定义体完成后才能定义类,因此类不能具有自身类型的数据成员。然而,只要类名一出现就可以认为该类已声明。因此,类的数据成员可以是指向自身类型的指针或引用。如:cl. 阅读全文
posted @ 2012-11-01 21:55 阳光守望者 阅读(429) 评论(0) 推荐(0) 编辑
摘要: 最近趁项目空闲时间,多补补数据结构及算法的知识,阅读严蔚敏的《数据结构》一书中提到KMP串匹配算法,不是特别理解,特别求next数组的算法。于是上网查了下资料,发现很多网友写了很多不错的文章,对于理解很有帮助。1、http://www.cnblogs.com/dolphin0520/archive/2011/08/24/2151846.html2、http://www.cnblogs.com/hi5000/archive/2012/05/28/2520915.html3、http://www.cnblogs.com/wentfar/archive/2011/12/17/2291340.html 阅读全文
posted @ 2012-10-31 18:23 阳光守望者 阅读(618) 评论(1) 推荐(0) 编辑
摘要: 由于项目开发的原因,需要配置QT creator+OpenCV2.4.2+MinGW开发环境,现对配置方法做如下总结:1.下载必备软件QT SDK for Open Source C++ development on Windows(在google上搜索一下官方网站即可找到)OpenCV 2.4.2:目前最新的OpenCV版本,安装之后的目录下面有源码和个版本的lib和dll,不过为避免出现问题,还是自己编译吧。 http://sourceforge.net/projects/opencvlibrary/files/opencv-winCmake 2.8.9 Google一下即可查到下载... 阅读全文
posted @ 2012-09-26 16:37 阳光守望者 阅读(14996) 评论(2) 推荐(0) 编辑
摘要: 利用拉普拉斯算子进行图像锐化是数字图像处理里比较简单的处理手段,下面的例子参考opencv 2 computer vision application programming cookbook,采用两种方法对输入图像进行拉普拉斯锐化,原理比较简单,故不赘述了。编译环境:VS2010+OpenCV2.3.1编程细节:函数的形参表中,为了防止修改输入图像image,故形参传递为pass by conference-const,同时函数体中指向输入图像的指针也必须声明为指向const对象的指针,如const uchar *next = image.ptr<const uchar>(j); 阅读全文
posted @ 2012-08-12 20:07 阳光守望者 阅读(37239) 评论(5) 推荐(1) 编辑
摘要: 编译环境:VS2010+OpenCV2.3.1学习体会:当Mat为多通道时,如3通道,如果我们将其内容输出到终端,则可以看出其列数为Mat::cols的n倍,当然n为Mat的通道数。虽是如此,但是Mat::cols的数值并没有随之改变。当复制一副图像时,利用函数cv::Mat::clone(),则将在内存中重新开辟一段新的内存存放复制的图像(图像数据也将全部复制),而如果利用cv::Mat::copyTo()复制图像,则不会在内存中开辟一段新的内存块,同时也不会复制图像数据,复制前后的图像的指针指向同一个内存块。使用的时候需注意两个函数的区别。为了避免函数参数传递时出现复制情况,函数的形参多采 阅读全文
posted @ 2012-08-12 15:53 阳光守望者 阅读(15316) 评论(0) 推荐(1) 编辑
摘要: 腾讯面试题:tcp三次握手的过程,accept发生在三次握手哪个阶段?答accept发生在三次握手之后。第一次握手:客户端发送syn包(syn=j)到服务器。第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个ASK包(ask=k)。第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1)。三次握手完成后,客户端和服务器就建立了tcp连接。这时可以调用accept函数获得此连接。const的含义及实现机制,比如:const int i,是怎么做到i只可读的?const用来说明所定义的变量是只读的。这些在编译期间完成,编译器 阅读全文
posted @ 2012-04-24 18:44 阳光守望者 阅读(8156) 评论(0) 推荐(0) 编辑
摘要: 步骤:右键要调试的项目—》Properties—》Debugging—》Command Arguments—》输入你要输入的参数即可。如下图所示:假设程序名叫main.exe通常我们在cmd命令行下需要输入:盘符:/文件路径/main.exe ../pic/Fig6.38(b).jpg 1../pic/Fig6.38(b).jpg 和 1 假设是2个参数我们就在Command Arguments下面的输入框中输入../pic/Fig6.38(b).jpg 1即可,main.exe就不输入进去了然后OK确认下调试就和平常一样没差别了,参数也会随着程序的调试运行而被自动输入。 阅读全文
posted @ 2012-04-12 09:39 阳光守望者 阅读(5977) 评论(0) 推荐(1) 编辑