自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Qt下获取屏幕分辨率

{ QApplication a(argc, argv); QDesktopWidget *desktop = a.desktop(); int screen_number = desktop->primaryScreen(); QRect rect = desktop->screenGeometry(screen_number);}...

2020-03-26 15:08:15 342

原创 Qt下自定义tabwidget使tabbar水平放置且文字水平

#include <QApplication>#include <QStyleOptionTab>#include <QStylePainter>#include <QTabBar>#include <QTabWidget>class TabBar: public QTabBar {public: QSize tab...

2020-03-26 14:41:53 1592 1

原创 tcp客户端和服务端

client.c#include <stdio.h>#include <sys/socket.h>#include <sys/types.h>#include <string.h>#include <netinet/in.h>#include <errno.h>#include <memory.h&g...

2020-03-26 14:17:45 199

原创 Qt开机动画模板

直接上代码: MainWidget w; //主界面 //logo QSplashScreen *splash = new QSplashScreen; splash->setPixmap(QPixmap(":/ad/loading")); splash->show(); QDat...

2020-03-26 11:15:54 587

原创 Qt自定义button事件

直接上代码TPPPushButton.h#include <QPushButton>#include <QPainter>#include <QMouseEvent>class TPPPushButton : public QPushButton{public: explicit TPPPushButton(QWidget *pare...

2020-03-26 11:06:48 1018

原创 使用dnw的一个问题

在使用dnw的过程中,需要用到/dev/secbulk设备,但是在插上usb先后并未出现该设备,在折腾了一整天后发现出现secbulk设备需要满足两个条件 1.安装了secbulk驱动 2. 必须在开发板的uboot中输入dnw命令后才能在pc机上dnw 文件。========================================================在此贴出secbu...

2020-02-21 18:55:25 329

原创 在ubuntu上安装驱动

今天在ubuntu上安装dnw时一直提示dnw usb device not found,百度了一圈,发现dnw需要用到/dev/secbulk,但在我的ubuntu中没有找到这个设备,推测是驱动没有安装的缘故。该驱动没法通过apt来安装,so找到了secbulk的源码,利用源码来安装。在此记录下源码安装驱动的方式。如下是Makefile内容:# obj-m := secbulk.o# ...

2020-02-21 18:42:46 877

原创 git 工具篇

在git push时出错,如下:bubu@ubuntu:~/Desktop/jushu/R16_V3/alexa-event-v3/src/alexa-realizer$ git push -u origin mastererror: src refspec master does not match any.error: failed to push some refs to 'git@...

2020-01-31 16:27:01 139

原创 tiny4412移植u-boot-2014.10

第一天: 打算移植uboot到tiny4412上,先查看ubuntu上现有的交叉编译器是否可以;1. export CROSS_COMPILE=arm-linux-2. export ARCH=arm3. 在configs目录下找一个现成的arm架构的配置zynq_microzed_defconfig,makezynq_microzed_defconfig...

2020-01-24 23:54:43 207

原创 bootloader移植要点

bootloader需要做以下几点1. 硬件初始化 a. 关看门狗 ========== 否则系统会不停的重启 b. 关中断 ========== 避免环境干扰或意外触发中断导致初始化失败 c. 设置时钟 ========= 上电时使用的是晶振时钟,频率较低, 设置PLL可以提高程序执行速度 d. 初始化内存 ======== cpu...

2019-10-29 11:32:14 346

转载 lua移植

https://blog.csdn.net/hhh3214/article/details/50219423

2019-07-17 17:44:26 385

原创 Linux使用pthread_cond_timedout超时的问题

最近在弄线程池的时候,用到了pthread_cond_timeout,调试发现如果判断if( pthread_cond_timeout(*,*,*) = ETIMEDOUT){ xxxx;}条件永远无法满足,超时时,打印pthread_cond_timeout返回值和ETIMEDOUT发现分别是-1, 和 110;因此判断if( pthread_cond_timeo...

2019-03-07 11:38:45 1489

原创 Linux工具之autogen.sh

从标题就可以看出了,autogen.sh是个shell脚本,它的作用就是将前一篇Linux工具之autoconf和automake讲的自动产生Makefile的过程集成到脚本中,简化操作。接下来看看如何操作,直接上代码:#!/bin/shecho echo ... helloworld autogen ...echo MISSING=""env aclocal --ver...

2019-03-06 16:24:16 11127

转载 git版本管理工具

发现一篇很好的介绍git工具的文章,就不在此多此一举了,直接搬过来。git上传远程仓库详细教程git上传远程仓库步骤:1. git init2. git remote add origin url3. git pull origin master4. git add .5. git commit -m "xxx"6. git push origin maste...

2019-03-06 14:53:26 117

原创 Linux工具之autoconf和automake

先搬一段别人的文章来说明为什么需要这两个工具:无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到make或 make install。利用make工具,我们可以将大型的开发项目分解成为多个更易于管理的模块,对于一个包括几百个源文件的应用程序,使用make和 makefile工具就可以轻而易举的理顺各个源文件之间...

2019-02-25 19:37:59 1780 1

原创 C++小心得之7: C++11新特性之利用std::conditional实现变量的多类型

 如代码所示:Type1,Type2,Type3都是根据模板 &lt;&gt;中的参数0来确定类型的。Type1为int, Type2为double,Type3为double;因此a=3, b=4.2; a+b = 7.2;#include &lt;iostream&gt;#include &lt;type_traits&gt;#include &lt;typeinfo&gt; ...

2019-01-23 14:50:25 4920

原创 c++小心得之6: 基类虚析构作用

BaseClass * base = new DerivedClass();delete base;如果BaseClass基类的析构函数不是虚析构函数,那么在delete base只会调用基类的析构函数; 若派生类对象申请了内存资源,就会造成内存泄露;基类的析构函数改为virtual虚析构函数,虚构函数会变为动态绑定,析构时会先调用派生类的析构函数,再执行基类析构函数;  ...

2019-01-05 19:06:51 143

原创 c++小心得之4:组合模式

组合模式可以分为两种形式:透明组合模式和安全组合模式透明组合模式1.抽象类Component中最大化的定义子构建接口,这样client端可以统一的调用构建接口函数;但这样的缺点是不够安全,因为Leaf 不可能有下一级子构建,为其提供多余的接口没有意义,调用这些接口可能会出错;安全组合模式1.在 Component 中最小化定义用于访问和管理子构建的接口,在子构建中添加具体的方法函数;优...

2019-01-05 17:54:44 160

原创 c++小心得之5:策略模式

策略模式(Strategy Pattern)封装一系列算法类,他们继承一个公共基类,在基类中定义了一个公共接口,让不同的算法以不同的方式来实现该接口,通过这个接口,Context 可以调用不同的算法并且使它们可以互相替换。Strategy 模式可以使算法独立于使用算法的客户端。和命令模式有点类似,不过命令模式多了一个接收者类,而策略模式相当于是将在接收者类中封装的具体逻辑封装在了算法类中;...

2019-01-05 11:26:52 113

原创 c++小心得之3: 命令模式

命令模式:在接收者类中一般会对操作进行最基本的封装,命令类则通过对这些基本的操作进行二次封装;优点:1.命令的调用者与执行者分开,调用者只需知道命令类即可,使双方不必关心对方是如何操作的,耦合度要比把所有的操作都封装到一个类中要低的多;这也是命令模式的精髓所在;2.耦合度低,加进新的命令类不影响其他的类,因此扩展命令类很容易。扩展:1.当一个命令需要多个接收者/执行者时,可以在命令内se...

2019-01-04 21:05:11 113

原创 c++小心得之2: 观察者模式

以下情况下可以使用观察者模式:1. 当一个模型有两个方面,其中一个类(类1)依赖于另一类(类2),当类2对象改变时需要通知类1对象相应改变;观察者模式不需要知道被通知的对象数量和具体对象 ; 也叫发布-订阅模式。应用实例:1.对数据进行统计分析时,能够提供多种形式的表现形式,如表格形式,柱状图,折线图等显示方式。这些形式依赖于相同的数据,当数据改变时, 所有的统计显示都能够同时改变。2....

2019-01-04 10:26:21 97

原创 c++小心得之1: 静态成员变量、静态成员函数和单例模式

今天在看单例模式时,看到了有静态成员变量和静态成员函数的使用,发现不太熟悉,特意去熟悉了下,现贴些自己的心得;拿单例模式代码来说明;            静态数据成员是类的成员,而不是对象的成员,所有该类对象都共用该数据成员,可以实现同类对象之间进行数据共享。            静态数据成员是静态存储的,它是静态生存期,必须对它进行初始化。  1、静态数据成员在定义或声明时前...

2019-01-02 23:02:29 1276

原创 Qt小心得之4: layout添加的控件设置align方式后的变化

在Qt  layout中添加了一个控件widget和一个layout1, layout 1不设置对其方式,对比图一和图二, 图一为widget和layout1都不设置align时的情况; 图二为layout1设置了align时的情况,设置对齐后layout1预留出了一部分空间,方便layout1设置对齐效果,图二layout1设置的是center对齐,可以看到widget和layout1间的间...

2018-12-26 22:26:57 3859

原创 Qt小心得之3: Layout存在默认Margins和Spacing

Qt中layout存在默认的Margins和Spacing值, 如果没有出现预期的效果,可能和默认值有关,可以通过设置setContentsMargins和setSpacing来改变设置。

2018-12-26 17:06:51 3765

原创 Qt小心得之2: 在slot/signals区域声明变量引发错误

在slot/signals区域声明变量会引发如下错误: [ error: [moc_xxx.cpp] Error 1 .

2018-12-25 23:30:27 256

原创 Qt小心得之1: QWidget中添加Q_OBJECT宏, setStyleSheet设置了背景颜色不显示

          QWidget在没有添加Q_OBJECT宏,在构造函数里用setStyleSheet设置了背景颜色,是可以正常显示,但添加了Q_OBJECT宏后,QWidget就无法显示背景色了, 百度了一下,发现了类似问题,说是QWidget顶级窗口无论是否添加Q_OBJECT宏, 背景色都可以正常显示;其他的如QFrame,无论是否添加了Q_OBJECT宏,无论是否是顶级窗口,都可以显示背...

2018-12-25 12:24:15 1389 1

转载 Ubuntu升级GCC版本

链接地址:http://www.linuxidc.com/Linux/2016-11/136840.htm

2017-09-23 22:31:13 287

转载 make/makefile中的加号+,减号-和at号@的含义

shell 命令每个目标都可以具有与其关联的一系列 shell 命令,这些命令通常用来创建目标。此脚本中的每一条命令都必须以制表符开始。虽然任何目标都能够显示在相关性行上,但除非使用 :: 操作符,否则这些相关性中只有一个能够通过创建脚本来跟随。如果命令行的第一个或前两个字符是 @ (at 符号)、-(连字符)和 +(加号)这几个符号之一或全部,那么将特别处理该命令

2017-04-28 11:23:26 1125

原创 **Tiny4412(Cortex_A9) Uboot内核移植(一)*

欢迎使用Markdown编辑器写博客本Markdown编辑器使用StackEdit修改而来,用它写博客,将会带来全新的体验哦:Markdown和扩展Markdown简洁的语法代码块高亮图片链接和图片上传LaTex数学公式UML序列图和流程图离线写博客导入导出Markdown文件丰富的快捷键快捷键加粗 Ctrl + B 斜体 Ctrl + I 引用 Ctrl

2017-04-14 00:43:53 844

转载 mount挂载方法详解

mount挂载方法详解● syntax : mount -t type [-rv] -o [option] server:pathname /mount_point  1、挂载点必须是一个目录。2、一个分区挂载在一个已存在的目录上,这个目录可以不为空,但挂载后这个目录下以前的内容将不可用。 对 于其他操作系统建立的文件系统的挂载也是这样。但是

2017-01-04 15:46:13 12869

空空如也

空空如也

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

TA关注的人

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