自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(28)
  • 资源 (1)
  • 收藏
  • 关注

原创 工作后感想

好久好久没上微博写过日记了。不知不觉已工作了一年,想念以前在学校的日子,无忧无虑,没有约束,身边一群好基友。想玩就玩,想学习就学习。。。 在金山软件也呆了一年了,没有什么不好也没有什么特别值得提起。工作了,日子过得平平淡淡,越来越觉得缺乏动力……夜深了,突然想起我还有个曾经努力经营的博客,那时多开心……回不去的往往只剩下回忆

2012-09-19 23:36:31 617

转载 OpenCV读取AVI文件

 今天看到网上很多人问,cvCreateFileCapture读取avi,为什么总是返回NULL. 我查了查文献,总结如下: (源程序附在最下)问题:为什么我的电脑支持AVI或者能够播出AVI,但为什么使用cvCreateFileCapture函数总返回NULL呢?答案:尽管是AVI文件,但也可能使用了某种codec,例如:MJPEG Decompressor。 需要把它转换O

2011-06-25 13:04:00 694

转载 #pragma pack 与#pragma pack(push,1)

<br />#pragma pack是指定数据在内存中的对齐方式,<br /> <br />在C语言中,结构是一种复合数据类型,其构成元素既可以是基本数据类型(如int、long、float等)的变量,也可以是一些复合数据类型(如数组、结构、联合等)的数据单元。在结构中,编译器为结构的每个成员按其自然对界(alignment)条件分配空间。各个成员按照它们被声明的顺序在内存中顺序存储,第一个成员的地址和整个结构的地址相同<br />(1) #pragma pack(1)<br />     作用:调整结构体

2010-12-09 18:03:00 655

转载 调试寄存器和测试寄存器

<br />1.调试寄存器<br />80386为调试提供了硬件支撑。在80386芯片内有8个32位的调试寄存器DR0~DR7,如图2.6所示。<br />     这些寄存器可以使系统程序设计人员定义4个断点,用它们可以规定指令执行和数据读写的任何组合。DR0~DR3是线性断点地址寄存器,其中保存着4个断点地址。DR5、DR6是两个备用的调试寄存器,目前尚未定义。DR6是断点状态寄存器,其低序位是指示符位,当允许故障调试并检查出故障而进入异常调试处理程序(debug())时,由硬件把指示符位置1,调试异常

2010-09-26 20:47:00 3464

转载 AT&T汇编指令总结

<br />1.寄存器引用 <br />   引用寄存器要在寄存器号前加百分号%,如“movl %eax, %ebx”。 <br />    80386有如下寄存器: <br />    8个32-bit寄存器 %eax,%ebx,%ecx,%edx,%edi,%esi,%ebp,%esp; <br />    8个16-bit寄存器 它们事实上是上面8个32-bit寄存器的低16位:<br />                   %ax,%bx,%cx,%dx,%di,%si,%bp,%sp; <br

2010-09-26 20:25:00 4583

转载 控制寄存器(CR0,CR1,CR2,CR3)

<br />控制寄存器<br />(控制寄存器(CR0,CR1,CR2,CR3)用于控制和确定处理器的操作模式以及当前执行任务的特性。)<br />    从上表可见,80386有四个32位的控制寄存器,分别命名位CR0、CR1、CR2和CR3。但CR1被保留,供今后开发的处理器使用,在 80386中不能使用CR1,否则会引起无效指令操作异常。CR0包括指示处理器工作方式的控制位,包含启用和禁止分页管理机制的控制位,包含控制浮点协处理器操作的控制位。CR2及CR3由分页管理机制使用。CR0中的位5—位30及

2010-09-26 20:24:00 1181

原创 GCC和GDB常用参数

<br />linux下有两种格式的库文件, <br />.a :传统的静态型函数库<br />.so和 .sa :共享型函数库<br />GCC是C语言的编译器,编译过程经过的步骤有: 1. 预处理(也称预编译):文件包含include、define等,生产 .i 文件 C++ 生成.ii  <br /> 2. 编译:生成 .s的汇编文件<br /> 3. 汇编:生成 .o 的目标文件<br /> 4. 连接 ld:生成可执行文件<br /> <br />gcc hello.c -I /home/incl

2010-09-14 14:59:00 803 1

转载 Qt拖放技术之一

拖放 Drag and Drop,有时又被称为 DnD,是现代软件开发中必不可少的一项技术。它提供了一种能够在应用程序内部甚至是应用程序之间进行信息交换的机制,并且,操作系统与应用程序之间进行剪贴板的内容交换,也可以被认为是 DnD 的一部分。DnD 其实是由两部分组成的:Drag 和 Drop。Drag 是将被拖放对象“拖动”,Drop 是将被拖放对象“放下”,前者一般是一个按下鼠标的过程,而后者则是一个松开鼠标的过程,这两者之间鼠标一直是被按下的。当然,这只是一种通常的情况,其他情况还是要看应用程序的具

2010-09-13 15:00:00 509

转载 Qt 国际化(上)

Qt中的国际化的方法有很多,常用的有使用QTextCodec类和使用tr()函数。前者将编码名称写到代码里面,除非你使用Unicode编码,否则国际化依然是一个问题;后者就不会有这个问题,并且这也是Qt推荐的做法。因此,我们主要来说使用tr()函数的方法进行应用程序的国际化。 我们先来看一个很简单的MainWindow。为了清楚起见,这里只给出了cpp文件的内容: #include "mainwindow.h"<br /><br />MainWindow::MainWindow(QWidget *paren

2010-09-12 10:25:00 405

转载 Qt Graphics View Framework

现在基本上也已经到了2D绘图部分的尾声,所谓重头戏都是在最后压轴的,现在我们就要来看看在绘图部分功能最强大的Graphics View。我们经常说KDE桌面,新版本的KDE桌面就是建立在Graphics View的基础之上,可见其强大之处。 Qt的白皮书里面这样写道:“Qt Graphics View 提供了用于管理和交互大量定制的 2D 图形对象的平面以及可视化显示对象的视图 widget,并支持缩放和旋转功能。Graphics View 使用 BSP(二进制空间划分)树形可非常快速地找到对象,因此即使是

2010-09-11 08:47:00 572

转载 绘图设备 QPixmap、QBitmap QImage

绘图设备是指继承QPainterDevice的子类。Qt一共提供了四个这样的类,分别是QPixmap、QBitmap、QImage和QPicture。其中,QPixmap专门为图像在屏幕上的显示做了优化,而QBitmap是QPixmap的一个子类,它的色深限定为1,你可以使用QPixmap的isQBitmap()函数来确定这个QPixmap是不是一个QBitmap。QImage专门为图像的像素级访问做了优化。QPicture则可以记录和重现QPainter的各条命令。下面我们将分两部分介绍这四种绘图设备。<

2010-09-11 08:27:00 6638 1

转载 Qt之Gradient渐变填充

前面说了有关反走样的相关知识,下面来说一下渐变。渐变是绘图中很常见的一种功能,简单来说就是可以把几种颜色混合在一起,让它们能够自然地过渡,而不是一下子变成另一种颜色。渐变的算法比较复杂,写得不好的话效率会很低,好在很多绘图系统都内置了渐变的功能,Qt也不例外。渐变一般是用在填充里面的,所以,渐变的设置就是在QBrush里面。<br /><br />Qt提供了三种渐变画刷,分别是线性渐变(QLinearGradient)、辐射渐变(QRadialGradient)、角度渐变(QConicalGradient)

2010-09-10 22:15:00 1195

转载 Qt的事件过滤器

Qt创建了QEvent事件对象之后,会调用QObject的event()函数做事件的分发。有时候,你可能需要在调用event()函数之前做一些另外的操作,比如,对话框上某些组件可能并不需要响应回车按下的事件,此时,你就需要重新定义组件的event()函数。如果组件很多,就需要重写很多次event()函数,这显然没有效率。为此,你可以使用一个事件过滤器,来判断是否需要调用event()函数。<br /><br />QOjbect有一个eventFilter()函数,用于建立事件过滤器。这个函数的签名如下:<b

2010-09-10 21:12:00 416

转载 事件接收与忽略

<br />本章内容也是关于Qt事件。或许这一章不能有一个完整的例子,因为对于事件总是感觉很抽象,还是从底层上理解一下比较好的吧!<br /><br />前面说到了事件的作用,下面来看看我们如何来接收事件。回忆一下前面的代码,我们在子类中重写了事件函数,以便让这些子类按照我们的需要完成某些功能,就像下面的代码:void MyLabel::mousePressEvent(QMouseEvent * event)<br />{<br />        if(event->button() == Qt::Lef

2010-09-10 20:11:00 433

转载 QPainter

多些大家对我的支持啊!有朋友也提出,前面的几节有关event的教程缺少例子。因为event比较难做例子,也就没有去写,只是把大概写了一下。今天带来的是新的部分,有关Qt的2D绘图。这部分不像前面的内容,还是比较好理解的啦!所以,例子也会增加出来。 有人问豆子拿Qt做什么,其实,豆子就是在做一个Qt的画图程序,努力朝着Photoshop和GIMP的方向发展。但这终究要经过很长的时间、很困难的路程的,所以也放在网上开源,有兴趣的朋友可以来试试的呀… 好了,闲话少说,来继续我们的学习吧! Qt的绘图系统允许使用相

2010-09-10 19:27:00 551

转载 事件(event)

一般来说,使用Qt编程时,我们并不会把主要精力放在事件上,因为在Qt中,需要我们关心的事件总会发出一个信号。比如,我们关心的是QPushButton的鼠标点击,但我们不需要关心这个鼠标点击事件,而是关心它的clicked()信号。这与其他的一些框架不同:在Swing中,你所要关心的是JButton的ActionListener这个点击事件。 Qt的事件很容易和信号槽混淆。这里简单的说明一下,signal由具体对象发出,然后会马上交给由connect函数连接的slot进行处理;而对于事件,Qt使用一个事件队列

2010-09-10 18:31:00 456

转载 自定义QMessageBox

如果我们想自定义图片的话,也是很简单的。这时候就不能使用这几个static的函数了,而是要我们自己定义一个QMessagebox来使用: QMessageBox message(QMessageBox::NoIcon, "Title", "Content with icon."); <br />message.setIconPixmap(QPixmap("icon.png")); <br />message.exec(); 这里我们使用的是exec()函数,而不是show(),因为这是一个模态对话框,需要有

2010-09-10 16:54:00 1712

转载 Qt标准对话框之QColorDialog

继续来说Qt的标准对话框,这次说说QColorDialog。这是Qt提供的颜色选择对话框。 使用QColorDialog也很简单,Qt提供了getColor()函数,类似于QFileDialog的getOpenFileName(),可以直接获得选择的颜色。我们还是使用前面的QAction来测试下这个函数:         QColor color = QColorDialog::getColor(Qt::white, this); <br />        QString msg = QString("r

2010-09-10 16:21:00 1077

转载 Qt parent参数作用

这是一篇很简单的文章,仅仅是用来说明一下一个参数的作用,因此我把它写成了tip,而不是接下来的17. 程序写的多了,你会发现几乎所有的Qt类的构造函数都会有一个parent参数。这个参数通常是QObject* 或者是 QWidget* 类型的。很多情况下它都会有一个初始值0,因此,即便你不去给它复制也没有丝毫的问题。于是,稍微偷懒一下,就会不自觉的忽略了这个参数。那么,这个参数到底是干什么用的呢? 其实,这个参数有很多用处。就像它的名字一样,这个参数指定了组件的父组件。对于一个对话框来说,对话框一般是不作为

2010-09-10 15:50:00 707

原创 实模式与保护模式(转)

<br />80x86 CPU有3个模式<br /><br />1:实模式<br />是CPU启动的时候的模式<br />这时候就相当于一个速度超快的8086<br />不能使用多线程<br />不能实现权限分级<br />还不能访问20位以上地址线,也就是说只能访问1M内存(!!!)<br />2:保护模式<br />操作系统接管CPU后.<br />会使CPU进入保护模式.<br />这时候可以发挥80x86的所有威力..<br />包括权限分级.内存分页.等等等等各种功能<br />3:虚拟8086模

2010-09-08 10:37:00 495

原创 RedHat linux 5不能手动选择安装包的解决办法

<br />我下载了几个linux版本在VM虚拟机下安装,都是自动帮你安装到底,不能像redhat 9那样自己选择安装包。在网上找也没找到答案,发了贴也没办法解决。过了一段时间,还是下载了一个自动安装。真实郁闷……<br />后来看它的安装过程怎么出现了自动安装vm tools,后来突然明白可能是vm5虚拟机对linux的自动安装,然后也把自己的工具一起安装了。所以,决定新建一个虚拟试试看,这是在选择iso镜像时,我不选择,而是选择最下面的“I will install the operating syst

2010-06-22 13:31:00 2243 1

原创 第18章 启动关机的流程与加载程序

<br />1. 如何察看与修改运行等级呢? <br />察看很简单,只要输入『 runlevel 』就可以得知。而如果要修改目前的 runlevel , 可以直接输入 init [level] 例如要去到 runlevel 3 可以:『 init 3 』即可。 如果想要每次开机都设定固定的 runlevel ,那麽可以修改 /etc/inittab 这个档案! 将里面这一行改成:『id:3:initdefault:』即可。 <br /><br />2. 我有个朋友跟我说,他想要让一个程式在 Linux 系

2010-06-13 20:46:00 472

原创 12章 正则表达式

<br />笔记:<br />1.  正则表达式是一种“表示法”,它与通配符不一样。在Linux下支持正则表达式的工具有:vi、grep、awk、sed等。<br />2. grep <br />    -n : 输出行号<br />    -v:反向选择<br />    -i:忽略大小写<br />   利用[ ] 来搜索集合字符   grep -n 't[ae]st'  test1<br />   行首与行尾 字符 ^ $   grep -n '^the'  test1<br />    任意一个字符

2010-06-06 12:15:00 541

原创 第一部分 第五章 启动关机,在线求助,执行命令的方式(转)

<br />习题:<br />        1.如果以命令行进入linux,有几个终端接口可以使用,如何切换不同的终端接口<br />        答:有六个终端可以使用,tty1-tty6,[Ctrl] + [Alt] + [F1-F6]<br />        <br />        2./VBird与/vbrid是否是相同的文件<br />        答:不相同,linux文件是分大小写的<br />        <br />        3.想要知道date如何使用,应该如何查询<

2010-06-06 11:17:00 721 1

原创 my C++ note 1

1.  定义就是(编译器)创建一个对象,为这个对象分配一块内存并给它取上一个名字。定义声明最重要的区别:定义创建了对象并为这个对象分配了内存,声明没有分配内存。( C++primer中也说到定义是声明的一种) 2. 数据从内存里拿出来先放到寄存器,然后CPU 再从寄存器里读取数据来处理,处理完后同样把数据通过寄存器存放到内存里,CPU 不直接和内存打交道。寄存器就就像是太监,CPU

2010-05-15 18:38:00 542

原创 矩阵相乘--高效实现方法

假如有两个矩阵M,N相乘,Q= M X N,M是m1 X n1矩阵, N是 m2 X n2。 只有当n1 = m2时,才可以进行两个矩阵的相乘。一般的做法是:(1)我们用两个二维数组分别存放 M 和 N ,然后再用一个二维数组 存放 Q。实现 Q = M X N的算法如下:(下标从1开始)for( i = 1; i     for(j = 1; j     {       Q[ i

2010-05-12 18:36:00 3889

原创 KMP算法的思想

在计算机中,字符串的搜索很重要。昨天突然想起KMP算法,找了书复习了一下。把具体的思想写下来和大家共享。为什么会出现KMP算法,因为一般的字符串匹配可能会比较浪费时间。现在讲的是速率。例如:主串是:ababcabcacbab,有个子串:abcac,一般的匹配是一个一个比较,如果不等,子串从头开始,而主串则跳到开始比较的第一个字符的下一个字符。第一次主串的ab和子串的ab相等,但到第三个就不等了。这

2010-05-11 18:56:00 1817

原创 大二

2010-01-21 15:37:00 705 2

电脑资料大全210本

电脑基础知识、各种电脑问题故障都在里面,~~很好

2010-01-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除