自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(61)
  • 收藏
  • 关注

原创 QT5.10新添加模块梳理

针对qt5.10版本梳理:1.新添加的扩展模块1.1Qt Virtual Keyboard输入框架,输入框架可以轻松编写自定义输入方法或集成第三方输入引擎。输入法可以用C ++或QML实现Qt虚拟键盘的主要功能包括:可定制的键盘布局和动态切换风格。预测文字输入与词选择。字符预览和替代字符视图。自动大写和空格插入。可扩展到不同的分辨率。支持不同的字符集(拉丁文,简体/繁体中文,印...

2019-12-07 16:04:43 2861

原创 QT5.10版本变动

文章目录1.新添加的扩展模块1.1Qt Virtual Keyboard1.2Qt SCXML1.3Qt Gamepad1.4新增功能2.删除的模块3.在开发中的模块3.1Qt Remote Objects3.2Qt Speech3.3Qt Network Authorization4.原有模块添加的新功能4.1Qt Core4.2Qt gui4.3Qt Widgets4.4Qt network4...

2019-12-07 15:55:22 746

原创 QTcreate交叉编译环境搭建

文章目录1.安装QTCreate2.搭建交叉编译环境2.1设置qmake2.2设置编译工具链2.3设置构建套件(Kit)3.QTCreate载入项目3.1选择构建套件(Kit)进行编译3.2编写配置文件.pro3.3编译生成Makefile和应用程序4.小机端测试1.安装QTCreate下载路径:https://download.qt.io/archive/qt/选择要安装的版本的qt...

2019-12-07 15:38:26 2651

原创 linux不常见格式压缩解压命令

文章目录压缩格式.tar.bz2.tgz.tar.xz.zip压缩格式.tar.bz2压缩tar -cjf test.tar.bz2 test解压tar -xjf test.tar.bz2.tgz1 将tgz文件解压到指定目录tar zxvf test.tgz -C 指定目录比如将/source/kernel.tgz解压到 /source/linux-2.6....

2019-12-07 14:32:10 138

原创 gdb调试cordump文件

文章目录1.环境准备:2.调试core文件自己在调试的时候,简单的使用方法,目前只是菜鸟水平,后面继续学习资料https://blog.csdn.net/zhangye3017/article/details/803824961.环境准备:使应用崩溃可以生成core文件ulimit -c unlimited2.调试core文件gdb 应用名称 XXX.core程序崩溃,bt查...

2019-12-06 20:09:04 430

转载 ubuntu使用win安装钉钉,微信

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声...

2019-12-06 18:58:11 669

原创 vim去除文件空白

通常要提交代码到gerrit时,会由于句前和句末多余的空格,导致格式不对代码合并不了,下面的方法可以轻松解决这种问题vim 插件去除空白,参考下面的链接https://github.com/ntpeters/vim-better-whitespace(方法1,要安装vundle插件)单个文件可以进行如下处理,不适用批量文件处理空白突出显示,可以显示句前和句末的空白:ToggleW...

2019-09-26 20:02:59 479

原创 线程资源销毁

最近写代码发现一个问题:线程销毁,线程的资源没有立即释放,只有在主进程销毁的时候才释放。怎么将不用的线程资源销毁,有下面的两种方法:线程分为可结合的(joinable)和 分离的(detached)两种,如果没有在创建线程时设置线程的属性为PTHREAD_CREATE_DETACHED,则线程默认是可结合的。可结合的线程在线程退出后不会立即释放资源,必须要调用pthread_join来...

2019-09-26 19:56:19 2098

转载 MiniGUI RGB565大小端显示问题

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 ...

2019-08-17 16:28:13 475

转载 ubuntu移植minigui

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 ...

2019-08-17 16:22:56 535

转载 MiniGUI开发问题集锦

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 ...

2019-08-17 14:25:08 1466

转载 MiniGUI编程指南

版权声明:本文为博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。 ...

2019-08-17 11:46:07 3521 3

原创 Qt Quick图形效果

图形效果1Blend2Color颜色效果3Gradient渐变效果4阴影效果DropShadow5Blur模糊效果6Glow发光效果自己博客中的代码可以在https://github.com/xixihaha331/QT_Repository中获取1.图形效果使用图形效果模块,要在.qml文件中导入 import QtGraphicalEffects 1.0Gradient 定义一个

2017-04-14 16:03:37 1121

原创 Qt Quick事件处理

MouseArea 鼠标句柄交互1MouseEvent鼠标事件2WheelEvent滚轮事件3DragEvent拖放事件键盘事件KeyEvent1导航键KeyNavigation自己博客中的代码可以在https://github.com/xixihaha331/QT_Repository中获取 事件处理 MouseArea 鼠标句柄交互 MouseEvent鼠标事件 W

2017-04-13 20:14:49 933

原创 Qt Quick中布局管理

Rectangle1Rectangle示例布局管理1Column 将子项目排成一列2Row 将子项目排成一行3Grid排成网格4Flow 将子项目从前向后像流一样排列Grid示例5anchors锚6Layouts布局管理器1.Rectangle属性:id;text;color;width;height; border.color 边框颜色 border.width边框宽度 o

2017-04-13 16:31:52 752

原创 QT5框架

Qt5安装1qt5中中文输入qt55版本之后这个方法就无效了Qt5框架1Qt的跨平台性LinuxUnixMac OSAndroidiOS2Qt模块3qt qml和qt quick框架QML语言1qml中基本元素11 基本可视化项12基本的交互项事件处理13状态14图形效果15动画和变换16工作中的数据17视图18定位器布局管理19实用110变换1.Qt5安装 下

2017-04-13 10:51:51 3299

原创 ubuntu的recovery模式

使用的平台环境是ubuntu14.04问题:   自己是普通用户,不小心执行了chmod root:root /usr/bin/sudo导致在普通用户下面无法使用sudo命令,同时又不能用sudo命令切换到root用户进行修改.解决:   启动ubuntu系统时不停的按住esc键,   -->进入grub菜单,   -->选择高级选项   -->选择recovery m

2017-03-22 14:48:50 8420

原创 多媒体文件封装格式

多媒体文件封装格式[top] 常见的封装格式有:TS、AVI、MKV、TP、MOV、M2T等等,它们与编码类型没有必然联系。不同的封装方式就好比是不同的盒子,高清视频要用它装起来才能呈现给观众。AVI AVI即音频视频交叉存取格式。1992年初Microsoft公司推出了AVI技术及其应用软件VFW(Video forWindows)。在AVI文件中,运动图像和伴音数据是以交织的方式存储,并独

2017-03-17 15:19:20 1438

原创 常见音视频编码格式

[toc]常见的音频编码格式MP3  这种压缩方式的全称叫MPEG Audio Layer3,MP3是利用MPEG Audio Layer 3的技术,将音乐以1:10甚至1:12 的压缩率,压缩成容量较小的file,换句话说,能够在音质丢失很小的情况下把文件压缩到更小的程度。而且还非常好的保持了原来的音质。  压缩率:10~12倍  优点:压缩比高,适合用于互联网上的传播  缺

2017-03-17 11:18:27 12970

原创 buildroot认知

什么是buildroot Buildroot是Linux平台上一个构建嵌入式Linux系统的框架。整个Buildroot是由Makefile脚本和Kconfig配置文件构成的。你可以和编译Linux内核一样,通过buildroot配置,menuconfig修改,编译出一个完整的可以直接烧写到机器上运行的Linux系统软件(包含boot、kernel、rootfs以及rootfs中的各种库和应用程

2017-03-16 11:14:51 11799 2

原创 vim+ctags配置

vim+ctags配置ctags是源代码阅读工具,通常和vim一同使用,可以在vim下轻松的跳跃到我们调用的内核源代码下面 1.下载ctags包:前往下载ctags包 2.解压包 tar -xvf ctags-5.8.tar.gz 3.cd ctags-5.8 4.执行./configure此命令通常是检查平台的特性的,并且生成makefile文件 5.执行make是从makefile文

2017-03-08 14:43:03 803

原创 git学习

1对git的理解2创建版本库 2.1把目录变成可以管理的仓库 2.2添加文件到git仓库 2.3在git仓库删除文件3远程仓库 3.1上传到远程库 3.2从远程库克隆4分支管理1对git的理解 例如我们每天要提交代码,那么每天都有相应的任务量,但是一个完整的项目需要好多人协同并且好多天才能完成,因此我们每个人不能等到自己的代码全部写完才传到代码仓库,因此要每天向仓库提交一定的代码,知道自己的任务完成

2017-03-05 18:53:01 329

原创 I/O复用_select_学习

最近在学习网络编程,觉得select这块的知识点确实比较难以理解,在学习socket网络通信机制时,只是习惯写诸如connect、accept、recv或recvfrom这样的阻塞程序,(所谓阻塞方式block,顾名思义,就是进程或是线程执行到这些函数时必须等待某个事件的发生,如果事件没有发生,进程或线程就被阻塞,函数不能立即返回)。可是使用Select就可以完成非阻塞方式工作的程序,所谓非阻塞方

2016-06-12 15:51:08 350

原创 STL学习_hash_table源码分析

由于自己最近在看STL中的hash_table,被它精巧的设计所折服。无论是对桶子个数的确定,对链表的维护方式,以及判断元素在哪个桶子里等等方法都考虑到了方方面面。所以自己写了篇总结。hash_table存储数据的特性    二叉树,AVL树,RB_tree等数据结构各有各的用途,并且具有对数平均时间,但之所以有这样高的效率取决于输入的数据有足够的随机性,那么hash_table这种数

2016-06-07 20:45:03 1898

原创 IP首部校验和的算法

IP/ICMP/IGMP/TCP/UDP/等协议的校验和算法是相同的,采用的都是将数据流视为16位整数流进行重复的叠加计算。    计算校验和的步骤:(1)把校验和字段置为0。(2)对IP头部的每16bit进行二进制求和。(3)如果和的高16位不位0,则将和的高16位和低16位反复的相加,直到和的16位为0,从而获得一个16位的值。(4)将该16位的值取反,存入校验和字段。

2016-06-06 16:53:38 1155

原创 原始套接字

最近自己在学习套接字,感觉原始套接字这块内容比较难以理解,但这部分的内容却十分有意思,所以自己对自己的学习到的知识点进行总结。    在学习int socket(int domain, int type, int protocol)时发现在函数的第二个参数位置type类型有3种。SOCK_STREAM   字节流套接字    SOCK_DGRAM     数据报套接字SOC

2016-06-06 16:35:19 1835

原创 virtual虚函数的用法

根据虚函数的不同位置,有着不同的作用。大致分为3类:虚拟继承,虚函数,纯虚函数(1)虚拟继承class A{public:    int data;};class B : virtual public A{private:    int b;};class C : virtual public A{private:    int c;

2016-05-25 17:29:07 996

原创 virtual应用于构造函数和析构函数的用途

virtual的应用实现了多态,那么对于类中的两个特殊的函数,构造函数和析构函数能不能用虚函数?(1)构造函数不能设计为虚函数        如果类中定义了虚函数,则会生成虚表,那么为了调用这个虚函数就要通过虚表来调用。可是,构造函数比较特殊,构造函数是在对象完全构造之前运行,那么就导致对象还没有实例化,那就还没有内存空间,没有内存空间肯定就找不到虚表,找不到虚表就不能调用虚函数,所以构造

2016-05-25 16:06:52 428

原创 不可思议的缩小vetor

如果vector的空间不够时,会自动的申请新的空间,空间大小为旧空间的2倍,然后将旧空间的数据拷贝到新空间,最后将旧空间释放。这种保留额外的内存空间已被将来增长的需要,从而防止增加新元素时过于频繁的重新分配。这也是vector比数组好的一点。    当然有没有想过,(1)如果原有的旧空间为128,现在需要的空间为130,如果用vector存储则会自动的申请更大的空间,则新的空间大小为256,这

2016-05-25 14:28:20 352

原创 STL算法_copy

STL标准模板库中的copy算法,整体设计比较复杂,使用起来也比较麻烦,因为copy函数为了强化效率可以说是无所不用其极。用到的编程技巧有函数重载,型别特化, 偏特化等技巧。所以STL库中的copy函数体现了泛化的思想      copy函数的整体架构:    (一)泛化的copy       inline OutputIterator copy(InputIterator first

2016-05-24 22:07:27 377

原创 Linux线程间同步机制_条件变量

有时看网上的博客自己会纳闷,进程间的同步机制和线程间的同步机制分别是什么?    其实进程之间是不用同步机制的,因为进程之间资源不共享,不需要同步机制来对所谓的临界资源进行保护,所以通常我们只讨论进程间的通信机制,有时候进程间的通信也称为进程间的同步,有管道,有名管道,信号量,消息队列,共享内存,socket, poll, epoll等,其实还有文件I/O,只是效率太慢不被采用,但是也能够实现

2016-05-23 16:34:05 2033

原创 Linux进程间通信_IPC机制的深入理解2

内核中每个IPC结构都有一个非负整数的标识符。但是多个进程利用IPC机制进行进程间的通信都是通过找到相同的IPC对象的键值就可以达到多个进程之间通过对同一个信号量, 消息队列,共享内存中的数据进行操作,这样多个进程就能够进行通信了。那么标识符和键(key)的作用    标识符:用来标识每个IPC结构。例如一台主机上现在有3个消息队列,则为了区分每个消息队列就用标识符对其进行标记。(这里的标

2016-05-17 17:31:09 458

原创 Linux进程间通信_IPC机制

刚开始接触IPC机制时,感觉这个知识点真的时晦涩难懂,因此自己将自己对IPC机制的理解做下总结。Linux中的IPC机制:信号量, 共享内存, 消息队列。注意这里的IPC机制的通信只能在一台主机上的多个进程线程之间进行通信,而跨主机之间的通信用socket, poll, epoll机制。一:信号量    计数信号量,其值在0和某个限制值之间,该值最大为32767, 这里信号量的

2016-05-16 18:03:23 1653

原创 红黑树节点的删除操作

二、红黑树删除后的调整删除节点后的调整要根据N的不同情形来分情况处理。假设删除节点后的树中,N的父节点为P,兄弟节点为S,兄弟节点的左孩子为SL,兄弟节点的右孩子为SR。需要注意的是空节点是有颜色的,它是黑色的。2.1 N为根节点这种情形非常简单,直接将其修改为黑色即可。因为如果N原来是黑色,则这样做不会改变其性质,如果原来为红色,我们需要保持红黑树的性质,也要把它修改为黑色。

2016-05-12 21:41:47 1133

原创 红黑树RB_tree

红黑树也是一种而叉搜索树,因此二叉搜索树的性质红黑树都具有,同时,我们知道为了避免最坏情况下的二叉搜索树(就是高度不平衡的情况)衍生出了AVL树,使其任何节点的左右子树的高度差相差最多1,从而达到平衡,以确保最坏情况下的搜索效率。当然红黑树为了比较好的搜索效率降低了对平衡的要求,但是红黑树仍然具有良好的平衡状态。    AVL树与RB_tree    AVL树也称为高度平衡树,其插入,删除

2016-05-10 18:01:08 768

原创 STL学习_萃取技术__type_traits

之前在学习STL库中的析构工具destory()时,提到过这样一句话,此函数设法找到元素的数值型别,进而利用__type_traits     让自己困惑的程序:    template    void destroy(T *pointer)    {        pointer->~T();    }    template    void destroy(

2016-05-10 14:33:02 931

原创 STL学习_stl_list.h_源码分析

stl_list.h中有几个函数自己觉得比较重要,transfer()  merge()  sort()#ifndef _SGI_STL_INTERNAL_LIST_H#define _SGI_STL_INTERNAL_LIST_H//list迭代器结构//不同的容器往往要给容器设置符合自己的迭代器,list的迭代器类型是双向迭代器//list的迭代器必须有能力进行递增

2016-05-08 20:43:29 675

原创 STL_学习_vector容器源码解析

这里自己总结了自己对SGI的vector容器的操作原理的一点理解。#ifndef _STL_VECTOR_H_#define _STL_VECTOR_H_templateclass vector{public:    typedef T value_type;    typedef value_type* pointer;    typedef const

2016-05-05 21:54:26 347

原创 const修饰函数参数,返回值,成员函数

看到const关键字,C++程序员首先想到的可能是const常量。这可不是良好的条件反射。如果只知道用const定义常量,那么相当于把火药仅用于制作鞭炮。const更大的魅力是它可以修饰函数的参数、返回值,甚至函数的定义体。(1)const修饰函数的参数        1.如果输入的参数采用“指针传递”,那么加上const可以防止意外的改动该指针,起到保护作用        例

2016-04-29 11:40:59 3550

原创 STL学习_SGI二级空间配置器源码剖析

//二级空间配置器 __defaule_alloc_template如果感觉光看代码难以理解,可以看看上篇博客介绍了二级空间配置器是怎样进行内存分配的。 enum{__ALIGN = 8};//最小申请的空间的大小enum{__MAX_BYTES = 128};//能最大申请的空间的大小//SGI第二配置器有16个free_listsenum{__NFREELISTS

2016-04-28 19:39:29 385

空空如也

空空如也

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

TA关注的人

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