自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

转载 #Pragma Pack(n)与内存分配 pragma pack(push,1)与#pragma pack(1)的区别

#pragma pack(n)解释一:每个特定平台上的编译器都有自己的默认“对齐系数”(也叫对齐模数)。程序员可以通过预编译命令#pragma pack(n),n=1,2,4,8,16来改变这一系数,其中的n就是你要指定的“对齐系数”。  规则:  1、数据成员对齐规则:结构(struct)(或联合(union))的数据成员,第一个数据成员放在offset为0的地方,以后每个数据成...

2018-08-16 15:13:48 192

转载 c++ 中__declspec 的用法

c++ 中__declspec 的用法语法说明:__declspec ( extended-decl-modifier-seq )扩展修饰符:1:align(#)    用__declspec(align(#))精确控制用户自定数据的对齐方式 ,#是对齐值。e.g__declspec(align(32)) struct Str1{int

2018-01-05 16:23:40 235

转载 使用QLibrary加载动态库

使用QLibrary可以在程序运行时加载动态链接库。一个QLibrary的实例作用于一个单一的共享库上。QLibrary提供了一种平台无关的方式访问库中的函数。可以在构建QLibrary的实例时将要加载的库文件传入,也可以在创建实例后使用setFileName()显式的设置要加载的文件名。当加载库文件时,QLibrary会搜索所有平台特定的库位置,除非传入的文件名具有绝对路径。如果传入的文

2018-01-05 16:20:18 1231

转载 Oracle Clusterware的命令集可以分为以下4种: 节点层:osnodes 网络层:oifcfg 集群层:crsctl, ocrcheck,ocrdump,ocrconfig 应用

Oracle Clusterware的命令集可以分为以下4种: 节点层:osnodes 网络层:oifcfg 集群层:crsctl, ocrcheck,ocrdump,ocrconfig 应用层:srvctl,onsctl,crs_stat 下面分别来介绍这些命令。1、节点层olsnodes,这个命令用来显示集群点列表,可用的参数如下:$olsnodes

2018-01-03 16:21:16 1077

转载 linux nobody用户是什么 1、Windows系统在安装后会自动建立一些用户帐户,在Linux系统中同样有一些用户帐户是在系统安装后就有的,就像Windows系统中的内置帐户一样。 2、

linux nobody用户是什么1、Windows系统在安装后会自动建立一些用户帐户,在Linux系统中同样有一些用户帐户是在系统安装后就有的,就像Windows系统中的内置帐户一样。2、它们是用来完成特定任务的,比如nobody和ftp等,我们访问 www.111cn.net的网页程序时,官网的服务器就是让客户以 nobody 身份登录的(相当于Windows系统中的匿名帐

2017-12-29 16:34:45 1473

转载 c++强制类型转换:dynamic_cast、const_cast 、static_cast、reinterpret_cast

dynamic_cast:   通常在基类和派生类之间转换时使用const_cast:   主要针对const和volatile的转换static_cast:   一般的转换(no run-time check)通常,如果你不知道该用哪个,就用这个。   reinterpret_cast:   用于进行没有任何关联之间的转换,比如一个字符指针转换为一个整形数。1)static_ca

2017-10-11 15:20:50 379

转载 ON_COMMAND和ON_MESSAGE的区别

在MFC应用程序中传输的消息有三种类型:窗口消息、命令消息和控件通知。窗口消息(Window Message)一般与窗口的内部运作有关,如创建窗口、绘制窗口和销毁窗口等。通常,消息是从系统发送到窗口,或从窗口发送到窗口。若需要窗口消息的完全的列表,请参考M F C文档。命令消息命令消息一般与处理用户请求相关,当用户单击一个菜单项或工具栏时,命令消息产生,并被发送到能处理该请求的类对象(如,装载文件

2017-09-04 09:44:12 4479

转载 Qt之界面数据存储与获取(使用setUserData()和userData())

Qt之界面数据存储与获取(使用setUserData()和userData())在GUI开发中,往往需要在界面中存储一些有用的数据,这些数据可以来配置文件、注册表、数据库、或者是server。无论来自哪里,这些数据对于用户来说都是至关重要的,它们在交互过程中大部分都会被用到,例如:单击一个用户头像,显示该用户的详细信息(等级、昵称、姓名、个人说明)。 简

2017-07-06 22:55:26 7931 4

转载 Delegate 类

Delegate  类概念与MVC模式不同,model/view结构没有用于与用户交互的完全独立的组件。一般来讲, view负责把数据展示给用户,也处理用户的输入。为了获得更多的灵性性,交互通过delegagte执行。它既提供输入功能又负责渲染view中的每个数据项。 控制delegates的标准接口在QAbstractItemDelegate类中定义。Delegates通

2017-07-01 13:54:24 403

转载 Qt在表格中加入控件

任务:使用 QTableWidget 动态生成表格,在每行的某两列中加入 QComboBox 下拉框控件和 QPushButton 按钮控件有添加,删除,编辑功能,每行的按钮可以浏览文件夹并选择文件  1、新建一个对话框QDialog,设计界面中选择Item-Widgets里的Table Widget,添加该控件,命名为tableWidget_userlist2、在Dial

2017-07-01 11:55:29 5913

转载 在表格单元格中添加标签和按钮

目前我只会两种,貌似可以用delegate,但是还不晓得怎么用方法1:如何只是为了用图标示意,然后点击该图标之后能够实现特定功能,那么可以使用QICon与itemClicked()。/*********************************************************************/// 构造函数myTableWidget::myTa

2017-07-01 11:54:20 907

转载 数据表格(QTableWidget)

一、简介        QTableWidget是QT对话框设计中常用的显示数据表格的控件,QTableWidget单元格数据是QTableWidgetItem对象来实现的,整个表格都需要用逐个单元格对象QTableWidgetItem构建起来。二、详解1、代码(1)table.h[html] view plain copy

2017-06-14 22:59:26 2011

转载 qt QTableWidget&&QTableView 导出数据到excel

通常情况下,我们在开发过程中比较常用的方法是将表格的数据到处到excel文件。我也在这个点上头疼了很长时间,不过功夫不负苦心人,最终还是勉强达到效果,为了后面再次用到时不手忙脚乱现在将方法寄存在此,如果有人需要也可以借鉴;注意:由于在qt导出的过程中分为QTableWidget导出文件到excel和QTableView导出文件到excel两个部分,所以在看这个笔记的的时候需要注意主方法程序

2017-06-14 22:54:37 534

转载 Qt中两种定时器用法

Qt中两种定时器用法在Qt中使用定时器有两种方法,一种是使用QObiect类的定时器;一种是使用QTimer类。定时器的精确性依赖于操作系统和硬件,大多数平台支持20ms的精确度。1.QObject类的定时器    QObject是所有Qt对象的基类,它提供了一个基本的定时器。通过QObject::startTimer(),可以把一个一毫秒为单位的时间间隔作为参数来

2017-05-28 10:20:11 590

转载 const在函数前与函数后的区别

const在函数前与函数后的区别一   const基础         如果const关键字不涉及到指针,我们很好理解,下面是涉及到指针的情况:         int   b   =   500;     const   int*   a   =   &b;              [1]     int   const   *a   =   &b;    

2017-05-20 16:36:00 303

转载 int main(int argc,char* argv[])详解

argc是命令行总的参数个数     argv[]是argc个参数,其中第0个参数是程序的全名,以后的参数     命令行后面跟的用户输入的参数,比如:     int   main(int   argc,   char*   argv[])     {     int   i;     for   (i   =   0;   i  i++)     cout   

2017-04-05 18:12:46 268

转载 C++中string.find()函数与string::npos

查找字符串a是否包含子串b,不是用strA.find(strB) > 0而是strA.find(strB) != string:nposstring::size_type pos = strA.find(strB);if(pos != string::npos){}-------------------------------------------int idx = st

2017-04-05 17:40:52 447

转载 C++类的前置声明

转自(http://qimo601.iteye.com/blog/1406992)刚开始学习c++的人都会遇到这样的问题:定义一个类 class A,这个类里面使用了类B的对象b,然后定义了一个类B,里面也包含了一个类A的对象a,就成了这样: //a.h  #include "b.h"  class A  {  ....  private:  

2017-04-05 10:22:13 317

转载 函数可重入性(Reentrancy)概念详解

1.什么是可重入性重入一般可以理解为一个函数在同时多次调用,例如操作系统在进程调度过程中,或者单片机、处理器等的中断的时候会发生重入的现象。可重入的函数必须满足以下三个条件:(1)可以在执行的过程中可以被打断;(2)被打断之后,在该函数一次调用执行完之前,可以再次被调用(或进入,reentered)。(3)再次调用执行完之后,被打断的上次调用可以

2017-03-28 14:32:10 460

转载 静态变量和实例变量的区别?

在语法定义上的区别:静态变量前要加static关键字,而实例变量前则不加。        在程序运行时的区别:实例变量属于某个对象的属性,必须创建了实例对象,其中的实例变量才会被分配空间,才能使用这个实例变量。静态变量不属于某个实例对象,而是属于类,所以也称为类变量,只要程序加载了类的字节码,不用创建任何实例对象,静态变量就会被分配空间,静态变量就可以被使用了。总之,实例变量必须创建对象后才可

2017-03-27 15:46:31 178

转载 typedef用法

引言typedef 声明,简称 typedef,为现有类型创建一个新的名字。比如人们常常使用 typedef 来编写更美观和可读的代码。所谓美观,意指 typedef 能隐藏笨拙的语法构造以及平台相关的数据类型,从而增强可移植性和以及未来的可维护性。在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。typede

2017-03-27 15:12:23 242

转载 架构、框架、模式、模块、组件、插件、控件、中间件的含义和区别

架构、框架、模式、模块、组件、插件、控件、中间件的含义和区别。经常看到这些概念,但是有些含糊,花点儿功夫整理一下,结果还是有些地方理解的不透彻,先将整理的内容写下来,以供交流。左侧英文栏中有些单词被分成了两半,放到了两行中,看的时候需要注意。欢迎各路大虾、大牛、大神拍砖警醒,油锤灌顶~~~术语英文解释中文解释软件架构archite

2017-03-27 15:10:56 542

转载 inline函数

inline函数是C++引入的机制,目的是解决使用宏定义的一些缺点。1.为什么要引入内联函数(内联函数的作用)  用它替代宏定义,消除宏定义的缺点。宏定义使用预处理器实现,做一些简单的字符替换因此不能进行参数有效性的检测。另外它的返回值不能被强制转换为可转换的合适类型,且C++中引入了类及类的访问控制,在涉及到类的保护成员和私有成员就不能用宏定义来操作。2.inline相比宏定义有哪些

2016-11-30 22:30:43 309

转载 静态编译与动态编译的区别

静态编译与动态编译的区别  动态编译的可执行文件需要附带一个的动态链接库,在执行时,需要调用其对应动态链接库中的命令。所以其优点一方面是缩小了执行文件本身的体积,另一方面是加快了编译速度,节省了系统资源。缺点一是哪怕是很简单的程序,只用到了链接库中的一两条命令,也需要附带一个相对庞大的链接库;二是如果其他计算机上没有安装对应的运行库,则用动态编译的可执行文件就不能运行。  静态编译就是

2016-11-30 21:38:15 9028

转载 C++ 私有构造函数的作用

很多情况下要求当前的程序中只有一个object。例如一个程序只有一个和数据库的连接,只有一个鼠标的object。通常我们都将构造函数的声明置于public区段,假如我们将其放入private区段中会发生什么样的后果?这意味着什么? 当我们在程序中声明一个对象时,编译器为调用构造函数(如果有的话),而这个调用将通常是外部的,也就是说它不属于class对象本身的调用,假如构造函数是私有的,由于在cla

2016-11-26 22:40:23 999

转载 嵌入式系统 Boot Loader 技术内幕

1. 引言在专用的嵌入式板子运行 GNU/Linux 系统已经变得越来越流行。一个嵌入式 Linux 系统从软件的角度看通常可以分为四个层次:1. 引导加载程序。包括固化在固件(firmware)中的 boot 代码(可选),和 Boot Loader 两大部分。2. Linux 内核。特定于嵌入式板子的定制内核以及内核的启动参数。3. 文件系统。包括根文件系统

2016-10-25 22:17:39 246

转载 嵌入式系统调试手段及方法综述

摘要:在数字信息技术和网络技术高速发展的今天,嵌入式系统已经广泛地渗透到人们的日常生活等方方面面中。而在嵌入式系统开发流程中调试是一个相当重要的环节.调试器是衡量一个系统开发环境优劣的重要因素。嵌入式系统的特点决定了发过程中交叉调试的必然性。本论文的主要工作是对当前两种主流的交叉调试技术即目标监控程序调试技术和片上调试技术进行研究与实现,之后对目前在嵌入式系统开发中

2016-10-25 10:31:00 12216

转载 嵌入式中 ARM的几种工作模式 以及异常模式的优先级

一、Arm工作模式:Arm微处理器支持7种工作模式,分别为:1. 用户模式(Usr)            用于正常执行程序2. 快速中断模式(FIQ)    用于高速数据传输3. 外部中断模式(IRQ)   用于通常的中断处理4. 管理模式(SVC)          操作系统使用的保护模式(高权限),复位和软件中断进入5. 数据访问终止模式(ab

2016-10-25 10:17:33 1397

转载 tslib机制分析

tslib,很早以前用了,深入了解了它的原理,但是当时忙,就没写成文档了,今天发现对它有点陌生了,觉得如果再不记录下来的话,估计以后就忘了。   估计大家都听说过tslib,其实从他的名字就可以看出它的,它是touchscreen的lib,其实这样还不够具体,其实它开始确实是为了touchscreen的鼠标驱动而发展起来的,且只是一个中间处理库,即将原始数据进行调整,比如触摸屏定位。只不过

2016-04-14 21:26:30 729

转载 C语言中的整数自动转换原则

1、隐式转换    C在以下四种情况下会进行隐式转换:       1、算术运算式中,低类型能够转换为高类型。       2、赋值表达式中,右边表达式的值自动隐式转换为左边变量的类型,并赋值给他。       3、函数调用中参数传递时,系统隐式地将实参转换为形参的类型后,赋给形参。       4、函数有返回值时,系统将隐式地将返回表达式类型转换为返回值类型,赋值给调用函数。

2016-03-31 23:06:46 307

转载 可重入和不可重入

重入一般可以理解为一个函数在同时多次调用,例如操作系统在进程调度过程中,或者单片机、处理器等的中断的时候会发生重入的现象。一般浮点运算都是由专门的硬件来完成,举个例子假设有个硬件寄存器名字叫做FLOAT,用来计算和存放浮点数的中间运算结果假设有这么个函数void fun(){//...这个函数对FLOAT寄存器进行操作}假如第一次执行,有个对浮点数操作运算的结果临时存在FLOAT寄存

2016-03-31 22:54:05 372

转载 FFmpeg深入分析之零-基础

FFmpeg是相当强大的多媒体编解码框架,在深入分析其源代码之前必须要有基本的多媒体基础知识,否则其源代码会非常晦涩难懂。本文将从介绍一些基本的多媒体只是,主要是为研读ffmpeg源代码做准备,比如一些编解码部分,只有真正了解了多媒体处理的基本流程,研读ffmpeg源代码才能事半功倍。下面分析一下多媒体中最基本最核心的视频解码过程,平常我们从网上下载一部电影或者一首歌曲,那么相应的多媒体播放器

2016-03-17 14:59:05 157

转载 QT父子与QT对象delete

很多C/C++初学者常犯的一个错误就是,使用malloc、new分配了一块内存却忘记释放,导致内存泄漏。Qt的对象模型提供了一种Qt对象之 间的父 子关系,当很多个对象都按一定次序建立起来这种父子关系的时候,就组织成了一颗树。当delete一个父对象的时候,Qt的对象模型机制保证了会自动的把 它的所有子对象,以及孙对象,等等,全部delete,从而保证不会有内存泄漏的情况发生。任何事情都有

2016-03-14 16:17:02 570

转载 QWSInputMethod类参考

QWSInputMethod类提供了在嵌入式Linux的Qt的国际输入法。[cpp] view plain copy1.#include   详细说明注意:这个类仅仅在嵌入式环境下有效一个Qt for Embedded Linux应用程序需要一个服务器应用程序来运行,或者它自身成为一个服务器应用程序。所有的系统会产生事件,包括

2016-03-14 11:17:03 1064

转载 *.pro、*.pri、*.prf、*.prl等四种文件

转摘地址:http://blog.csdn.net/dbzhang800/article/details/6348432 尽管每次和cmake对比起来,我们总是说 qmake 简单、功能少。但是qmake仍然是一个非常复杂的东西,我想大多人应该和我一样吧:不是太清楚CONFIG等变量到底如何起作用的用过的qmake内置变量和函数不超过20个看Qt Creat

2016-03-07 10:34:51 332

转载 Qt之QTextCodec乱谈

何处开始呢?一旦在Qt程序中出现latin1字符集以外的字符,几乎大家无一例外的会用到 QTextCodec。而不少网友不分青红皂白,一旦用到中文,就同时使用下面3条指令(其中textc 取为 gb18030 或 utf8,还有的会选用system)。QTextCodec::setCodecForCStrings(textc);QTextCodec::setCodecFo

2016-03-01 16:25:45 814

转载 MySQL 插入数据时,中文乱码问题的解决

MySQL 插入数据时,中文乱码问题的解决当向 MySQL 数据库插入一条带有中文的数据形如 insert into employee values(null,'张三','female','1995-10-08','2015-11-12','Sales',2000,'是个好员工!'); 出现乱码时,可以使用语句 show variables like 'character%

2015-12-06 21:28:01 276

转载 QT链接mysql驱动程序出现的问题详解

QT链接mysql驱动程序出现的问题详解首先列举一下Qt顺利链接mysql的操作步骤:    1、安装MySQL时选择安装include和lib文件,安装目录中不能有空格,一般设置C:\mysql    2、设置环境变量,需添加如下的环境变量:          C:\Qt\2010.02.1\bin;          C:\Qt\2010.02.1\qt\bin; 

2015-12-03 23:23:47 1089

转载 校验和算法

校验和算法    经常看计算机网络相关的书时,每次看到关于IP或者是UDP报头校验和时,都是一笑而过,以为相当简单的东西,不就是16bit数据的相加吗!最近在学习Ping命令的源待时,看到里面有关于校验和的算法。一头雾水,后来查找资料,看到校验和是16bit字的二进制反码和。总是觉得很奇怪,为什么会用反码和,而不是直接求和呢?或者是补码和呢?因为在计算机里面数据是以补码的形式存在啊!经过看书查

2015-10-12 16:18:57 1040

转载 QPixmap和QImage的区别及剖析

(一)QPixmap和QImage的区别http://www.thisisqt.com/forum/viewthread.php?tid=267QPixmap是专门为绘图而生,当需要绘制图片时你需要使用QPixmap。QImage则是为I/O,为图片像素访问以及修改而设计的。如果你想访问图片的像素或是修改图片像素,则需要使用QImage,或者借助于QPainter来操作像素。另外跟

2015-10-09 16:57:48 435

空空如也

空空如也

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

TA关注的人

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