自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

xuqiang918的专栏

金麟岂是池中物,一遇风云化成龙。

  • 博客(292)
  • 资源 (30)
  • 问答 (2)
  • 收藏
  • 关注

原创 如何成为一名合格的软件开发架构师

问答

2023-05-04 09:17:46 206

原创 QGC源码分析笔记一之main.cc

前言一切的起源来自main()函数。正文main.cc源码如下​/**************************************************************************** * * (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org&...

2019-02-14 16:32:07 2405 3

原创 Jenkins部署到远程服务器并备份包文件

前言    Jenkins自动构建后发送到远程服务器,执行shell文件,和shell脚本。shell中实现程序自动部署和安装包版本备份。前提条件一台远程服务器比如10.10.10.100,已经设置好SSH免密访问。一台装有Jenkins项目服务器。配置操作sh文件内容:echo 'start.........................'project_pa...

2019-01-15 17:42:35 2418

转载 Linux下BitNami Redmine的插件安装与更新

截至2017年3月27日,Redmine-3.3.2-2安装以下的15款插件全部成功并通过测试(下面显示为插件正确文件夹名): easy_wbs redmine_ckeditor 提供所见即所得编辑器 redmine_graphs 提供部分问题图表功能 progressive_projects_list 是一款主题,能在项目总页面、项目概述页面显示项目进度 ...

2018-09-26 10:00:11 798 1

转载 CentOS配置BitNami-redmine

https://blog.csdn.net/sinat_37942883/article/details/68483272搭建redmine: 1、下载redmine(下面版本任选一个,如需要还原备份的redmine数据则选回同一版本)wget https://downloads.bitnami.com/files/stacks/redmine/3.3.2-2/bitnami-re...

2018-09-26 09:26:44 679

原创 centos7.5系统bitnami redmine 安装Agile插件遇到的问题总结

执行  bundle install --without development test --no-deployment 会报一些bundle 命令找不到这种情况安装bundle相关依赖就行后面继续执行这句话后假如出现下面问题:Building native extensions. This could take a while...ERROR: Error inst...

2018-09-25 16:02:55 595 1

原创 Spring Boot application.properties的多环境配置关系

刚接触spring boot时候相信大都对多个properties配置文件有种疑惑,他们什么关系?其实dev pro相当于基于application.properties增量配置,application.properties一般放通用的配置,dev和pro放特殊配置。#application.properties中需要配置默认启动模式来选择不同的开发环境spring.profile...

2018-09-21 09:29:17 3397

转载 在CentOS7.4中使用Vsftpd搭建FTP服务器

版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/qq_32786873/article/details/78730303一、安装并启动FTP服务1.查询是否系统已经自带了vsftpd :rpm -q vsftpd2.使用 yum 安装vsftpd:yum -y install vsftpd (或者使用rpm安装vsftpd:rpm -ivh ...

2018-09-14 11:18:24 493

原创 log4cplus封装

1.前言log4cplus原始用法(eg:LOG4CPLUS_DEBUG())不方便的可以进行二次封装。参考了下其他道友的然后自己封装了一个简单的类 :说明:测试在ubuntu Qt上面测试通过,windows我没有测试如果需要自行修改也可以下方留言避免踩坑(应该可以用)2.头文件slog.h#ifndef SLOG_H#define SLOG_H/// 包裹类/// @n...

2018-07-27 10:11:36 2975 1

转载 使用异步模式的log4cplus

这篇文章基本上写了log4cplus的基本使用方式。转载过来少走弯路,后续我会自己封装相应方法最终用于项目中方便使用。这篇文章比较详细介绍了log4cplus用法 https://www.cnblogs.com/justinezhang/p/5793532.html 内容如下:最近因为项目的原因,开始研究log4cplus这个日志库。主要是把新版中增加的异步模式log用起来。异步log目前...

2018-07-26 15:59:59 1575

原创 Log4cplus使用

        最近看了下日志系统,目前有很多种,比如qlog,log4j家族的log4cpp,log4cxx,log4cplus,boost.log,log4qt,Logger等等目前自己比较喜欢的log4cplus和boost.log,后者有时间再研究下。下载log4cplus 编译./configure -> make ->make check->make instal...

2018-07-25 17:14:59 496

原创 Ubuntu18.04 截图工具推荐

之前用的deepin-scrot 在18.04版本一直无效,因此换用flameshot 感觉还可以,推荐给大家安装flameshot:https://github.com/lupoDharkael/flameshot安装命令:sudo apt-get install flameshot设置>设备>键盘,设置一个自定义快捷键(拉到最下面)命令填写:flameshot gui...

2018-07-24 21:52:41 14560 6

原创 知识巩固之boost的Signals2感悟

在看boost文档的时候有个Signals/Slot的例子:#include <iostream>#include <boost/bind.hpp>#include <boost/function.hpp>#include <boost/signals2.hpp>class Document{public: Documen...

2018-07-17 16:10:49 408

原创 知识巩固之boost的Signals2连接方式

知识百科Signals2是boost里面另一个Signals库,该库实现了线程安全的观察者模式,基于函数回调机制实现信号/槽的绑定和触发事件。引用头文件:#include <boost/signals2.hpp>说明:该库是线程安全的。相关:C#语言的event/delegate机制 ;Qt 信号和槽1. Signals2中连接方式 说明位置:<boost/s...

2018-07-17 09:36:49 1426

原创 知识巩固之观察者模式

 百度百科:观察者模式(有时又被称为模型-视图(View)模式、源-收听者(Listener)模式或从属者模式)是软件设计模式的一种。在此种模式中,一个目标物件管理所有相依于它的观察者物件,并且在它本身的状态改变时主动发出通知。这通常透过呼叫各观察者所提供的方法来实现。此种模式通常被用来实现事件处理系统。 说明: 区块链Bitcoin中信号处理使用的是boost里面的Signa...

2018-07-16 11:30:10 263

转载 【确实不错】10本最值得推荐的区块链书

区块链爆火, 从投资人到互联网大佬,从企业巨头到新型创业者纷纷入局,这把火真的是越烧越旺,人人争做新技术的弄潮儿。如何快速入局区块链,掌握新的技术趋势?小七在这里为大家整理了几本区块链相关的书籍,从不同的角度切入区块链,有助于你更深入、系统、全面的了解区块链科技。<入门篇>《区块链:从数字货币到信用社会》作者:长铗 韩锋 等出版时间:2016年07月推荐理由:本书较为系统地对区块链的历...

2018-06-12 10:24:55 8392

原创 g++ makefile简单书写

1. value.cpp (C++11完美转发例子)#pragma GCC diagnostic error "-std=c++11" #include <iostream> using namespace std; void fun(int &x) { cout << "lvalue ref" << endl; } void ...

2018-06-01 17:20:07 3529

原创 【Android源码分析】深入理解Radio(Tunner)创建分析

这篇文章主要根据代码结构从JAVA层到JNI层再到HAL层理解分析Radio的创建流程分解:说明Radio和Tunner都是指的一个意思,后面叙述就用Radio描述。1.JAVA层创建Radio(Tunner)1.1RadioManager中调用openTuner:-------------------------------------------------------------------...

2018-04-24 15:27:05 5827 1

原创 【Android源码分析】理一理Radio(Tunner)BandConfig

前言上篇文章讲解到Radio创建过程 https://blog.csdn.net/xuqiang918/article/details/80065145这篇文章继续分析下Radio在创建过程中传递的BandConfig参数获取过程1 入口回到函数openRadioBandInternal中可以看到config在每次调用openTuner时候都会去获取一次当前band配置信息------------...

2018-04-24 15:21:10 1803

原创 【Android】Radio HAL JNI JAVA 三层结构解析

最近有个项目需要在Android Radio中增加一个远程/近程功能,犹豫Android原生代码没有提供该功能,因此只能自己修改Android源码来完成该功能。(说明:修改远程/近程功能实质就是修改Radio搜索时候传递的参数值,暂且理解成设置’门限‘)由于要修改Android底层源码,因此得先了解Android框架结构。其实HAL层在这个位置,HAL层主要是为保护硬件厂商知识产权等...

2018-03-22 17:21:12 3758 1

转载 C++11中的原子操作(atomic operation)

所谓的原子操作,取的就是“原子是最小的、不可分割的最小个体”的意义,它表示在多个线程访问同一个全局资源的时候,能够确保所有其他的线程都不在同一时间内访问相同的资源。也就是他确保了在同一时刻只有唯一的线程对这个资源进行访问。这有点类似互斥对象对共享资源的访问的保护,但是原子操作更加接近底层,因而效率更高。在以往的C++标准中并没有对原子操作进行规定,我们往往是使用汇编语言,或者是借助第三方的

2017-09-25 14:24:18 816

原创 VS2013配置glfw和glew说明

市面上很多库 glfw glew freeglut 等等 这些都可以在官网下载。编译这些很简单 下个Cmake软件就可以自己编译配置我看网上很多说的比较复杂这里理清一下。加载库1、首先看你需要什么版本32还是64位。2、引用lib库文件3、引用库头文件至于vs工程怎么配置很简单,网上有的是在项目管理配置里面添加的:对应的添加默认库glfw3.lib和

2017-05-19 09:54:10 3048

原创 QML实现仿酷狗音乐播放器(支持在线和本地播放)

1、支持在线音乐播放由于在线音乐设计到敏感代码,暂时没有剔除就没有发布代码了,如果需要参考可以@我(其实这方面资料网上也多)。2、支持本地音视频播放。3、支持歌词同步。4、支持皮肤系统技术Qt quick QML 、Qt网络通信、Qt multiMedia以下是效果图片在线音乐

2017-05-08 11:11:32 5477 13

原创 C++中QMediaPlayer在QML中播放实现

1、mediaplayer.h#ifndef MYMEDIAPLAYER_H#define MYMEDIAPLAYER_H#include #include class MyMediaPlayer: public QMediaPlayer{Q_OBJECTpublic: Q_PROPERTY(QAbstractVideoSurface* videoSurface REA

2017-05-05 18:30:48 2935 1

原创 QML JS封装播放器时间格式显示

/* * 函 数: dateFormat * 功 能: 时间字符串转换函数 * 参 数: nSeconds [in] 传入的时间值 单位S * 返回值: 无 */function dateFormat(second){ var timeTxt=""; var hh,mm,ss; hh = second / 3600 | 0;

2017-05-05 10:48:25 652

原创 Qt QTranslator和linguist国际化语言支持

QTranslator的使用QTranslator类加载Qt的翻译文件来进行国际化语言翻译。一.创建翻译文件1.1工具创建1.在*.pro中添加:TRANSLATIONS += *.ts,有多少种语言添加多少个文件。2.之后运行lupdate *.pro生成ts文件。lupdate会根据源代码中的内容提取出待翻译的字段,然后生成ts文件,

2017-03-28 18:13:00 766

转载 Learn-OpenGL基础书籍推荐

Learn-OpenGL转自https://github.com/Esdeath/Learn-OpenGL#learn-opengl关于OpenGL的学习资料语言相关的书籍:1.C语言C语言我觉得是最值得任何程序员花大量的时间学习的语言.原因是:c语言不在可能随着时间的变化而产生太大的变动,最多也就是一点修修补补.可以说是一朝学会,终生受用c语言是简

2017-03-27 15:38:41 3230

转载 C++的单例模式与线程安全单例模式(懒汉/饿汉)

1 教科书里的单例模式  我们都很清楚一个简单的单例模式该怎样去实现:构造函数声明为private或protect防止被外部函数实例化,内部保存一个private static的类指针保存唯一的实例,实例的动作由一个public的类方法代劳,该方法也返回单例类唯一的实例。  上代码:  123456

2017-03-20 17:06:19 615

原创 Edward's skill xmind picture in 2017

2017-01-06 16:37:50 484

原创 dex2jar反汇编android的dex/APK文件为jar包命令和方法

1、下载dex2jar2、windows系统打开cmd进入dex2jar.bat目录  输入命令: dex2jar.bat  ./classes.dex  (classes.dex 为需要反编译的文件,)3、即可生成对应的xxx.jar文件4、用jad或者解压都可以查看class文件

2016-12-23 17:32:35 5743

转载 win7与VMware ubuntu虚拟机实现文件共享(最后一定要装open-vm-dkms插件)

一般来说,由于一些特殊的需要,会在Win7系统中利用虚拟机(VMware)安装ubuntu虚拟环境,使得不用重启就可以同时使用两个系统。但是想把在虚拟机ubuntu中编辑的文件可以同时被Win7中的程序使用,同时又不想利用两个系统的QQ或者U盘互拷,就需要能将文件在虚拟机和Win7(在这里以Win7为例,WinXP操作一样)下实现互传。有一种方法,就是通过VMware的共享文件夹来实现虚拟机Ubu

2016-12-15 14:24:16 646

转载 PPL 和AMP并行编程

根据我的理解,PPL是指Parallel Patterns Library,这是微软为了提出并行计算(就是现在的C++ AMP)而在Visual Studio2010中引入的提供了类似于标准模板库 (STL) 的编程模型:并行模式库。具体MSDN上关于PPL的介绍参见:Parallel Patterns Library (PPL)C++ AMP也是同样类似于标准模板库(STL)

2016-09-19 10:14:49 1009

转载 遇见C++ Lambda

生成随机数字假设我们有一个vector容器,想用100以内的随机数初始化它,其中一个办法是通过generate函数生成,如代码1所示。generate函数接受三个参数,前两个参数指定容器的起止位置,后一个参数指定生成逻辑,这个逻辑正是通过Lambda来表达的。代码 1我们现在看到Lambda是最简形式,只包含捕获子句和函数体两个必要部分,其他部分都省略了。[]是La

2016-09-19 08:42:33 306

转载 C++11 新特性:显式 override 和 final

参考文章:https://blogs.oracle.com/pcarlini/entry/c_11_tidbits_explicit_overrides2012 年 3 月 22 日,GCC 4.7.0 正式发布。从这个版本开始,GCC 增加了许多新的 C++ 11 的特性。今天我们要介绍的是其中的一个特性:显式的使用 final和override关键字。先来看下面的例子:

2016-06-25 12:54:32 668

转载 QML中的JavaScript用法详解

http://www.2cto.com/kf/201412/364184.html熟悉JavaScript的应该都了解Netscape公司,一代骄子虽然倒下了,却给后人留下了最为珍贵的产品和经验,在互联网发展史上享有举足轻重的地位,这里就不讲故事了,虽然很精彩,从未被磨灭。QML是对JavaScript的扩展,提供了JS主机环境,用法相似,但有些地方与浏览器/服务器端提供的JS主机环境

2016-06-24 17:50:42 1231

转载 C++11 lambda 表达式解析

转致:http://www.cnblogs.com/haippy/archive/2013/05/31/3111560.htmlC++11 新增了很多特性,lambda 表达式是其中之一,如果你想了解的 C++11 完整特性,建议去这里,这里,这里,还有这里看看。本文作为 5 月的最后一篇博客,将介绍 C++11 的 lambda 表达式。很多语言都提供了 lambda 表

2016-06-24 15:35:52 397

转载 C++11中的std::function

原文地址:http://www.jellythink.com/archives/771看看这段代码先来看看下面这两行代码:std::functionvoid(EventKeyboard::KeyCode, Event*)> onKeyPressed;std::functionvoid(EventKeyboard::KeyCode, Event*)> onKeyReleas

2016-06-24 14:22:49 430

原创 QtQuick学习笔记之QML布局定位器Row/Column/Grid/Flow

记录Qtquick核心编程学习内容:组件ColorPicker在前面章节写了 http://blog.csdn.net/xuqiang918/article/details/51672479 的ColorPicker.qml中import QtQuick 2.5import QtQuick.Controls 1.4Rectangle{ id:root;

2016-06-15 00:04:41 6380 1

原创 QtQuick学习笔记之QML文件定义组件Component

记录Qtquick 核心编程学习笔记:文件名称和组件名字一样:ColorPicker.qml文件如下:import QtQuick 2.5Rectangle { id:colorPicker; width:50; height:30; signal colorPicked(color clr); function configu

2016-06-14 16:07:15 4384

原创 QtQuick学习笔记之QML定时器Timer

记录Qtquick核心编程学习笔记:import QtQuick 2.5import QtQuick.Controls 1.4Rectangle{ width:300; height:400; id:root; color:"green"; QtObject { id:attr; proper

2016-06-14 11:31:21 8504

QMediaPlayer and QML视频播放器Demo

QMediaPlayer C++类中操作播放器,在QML中显示,整理了下。只做参考

2017-05-05

OCX上添加ScrollView视图

由OCX上添加ScrollView滚动视图,其实方法很多:1.OCX上直接添加MVC文档模式;2.OCX添加CWND控件,CWND控件上添加ScrollView;3.OCX上添加对话框,对话框上承载ScrollView;第二种和第三种差不多;本代码就是采用第三种;借鉴网上代码;实现按住Ctrl + 滚动鼠标进行缩放视图。感觉第一种方法网上有几个文章,介绍的都比较少。给大家参考。

2014-09-25

GDIplus加载PNG图片实现透明效果

GDI plus 加载PNG图片实现透明效果,窗口透明效果;类似360那个圈。可以拖动;分享下

2014-06-18

VS2012C#WebService

VS2012C#WebService

2013-10-18

TabBarController

说明 TabBarController 和 TabBar 大同小异。都用于视图切换。像MFC里面的tab控件。

2013-09-26

t420黑苹果驱动110买的 分享

自己买的thinkpad t420 黑苹果驱动 希望对大家有用 淘宝买的 110 套餐 自己装了 还行 声明:不保证你自己的机子可以用哈 还有需要黑苹果安装一整套的 可以给 主要太大了

2013-08-28

OpenGL SDK

OpenGL SDK

2013-06-03

学OpenGL编3D游戏

学OpenGL编3D游戏

2013-06-03

飞秋老板和新版

飞秋老板和新版

2013-05-25

vs2008/2005卸载

清理VS2008 2005 组件工具 很强大

2013-05-05

高质量编程

同事给我看的 和大家分享 好东西,十分有用的 高质量编程指南

2013-04-25

linux网络编程

linux网络编程

2013-04-18

鼠标钩子实例

钩子实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。对每种类型的钩子由系统来维护一个钩子链,最近安装的钩子放在链的开始,而最先安装的钩子放在最后,也就是后加入的先获得控制权。要实现Win32的系统钩子,必须调用SDK中的API函数SetWindowsHookEx来安装这个钩子函数,这个函数的原型是HHOOK SetWindowsHookEx(int idHook,HOOKPROC lpfn,HINSTANCE hMod,DWORD dwThreadId);,

2013-02-20

处理数据库操作封装ADO

数据库ADO封装库 Database ADO package library 很强大的

2013-02-16

google地图操作手册

1. 谷歌地图框架是使用CDHtmlDialog作为外壳,借助资源文件GMapMgr.htm访问Google在线地图,通过JavaScript与VC交互。 2. 需要注意的是里面很多地方通过消息来控制,Google地图提供了很好的消息回调机制,类GmapMgr的成员函数OnDocumentComplete通知Html加载完成,然后里面调用JavaScript函数InitMap来初始化地图和注册相关回调函数,地图的各种消息可以查询配套文件Google Maps JavaScript API V2 Reference.mht。 3. 类MapMgr负责维护数据:数据加入、修改、删除、绘制。对于小数据采用成员数组来保存,对于大数据则动态申请内存,线程DrawThread负责绘制,频率是每隔400毫秒绘制一次,如果地图拖动、缩放或更改中心,线程会等待地图重新绘制完成。为了加快绘制速度,地图坐标转换为屏幕坐标做了特殊处理:每次地图绘制完成,都会记录地图左上角、中心、右下角三个点的GPS和屏幕坐标,然后绘制数据的时候就通过这三个点来转换。

2013-02-05

MapX开发电子参考手册.CHM

本电子手册按字母顺序对MapX的对象、属性方法以及相关事件进行描述,每项都包含了目标、语法、注释以及与其它项的关联,并且包含了Visual Basic和C++编写的示例代码。 文档规约 文档在语法描述中使用了一些和Visual Basic 文档相近的印刷约定,有关这些约定,请参考《Microsoft Visual Basic编程指南》或《Microsoft Visual Basic语言参考》。

2013-02-05

SetupFactory

Setup+Factory+7.0+中文教程.rar 是一款实用的打包工具;我们在用VB等语言编写并编译成程序后,往往会希望制作一个精美的安装程序来发布自己的软件。在这里推荐使用Setup Factory 7.0,这是一款强大的安装程序制作工具。该软件提供了安装制作向导界面,即使你对安装制作不了解,也可以生成专业性质的安装程序。可建立快捷方式,也可直接在 Windows 系统的注册表加入内容,还能在 Win.ini 和 System.ini 内加入设定值,更可以建立反安装选项等等。它内附的向导可以一步步的带领您做出漂亮又专业的安装程序。目前该软件的最新版本为7.0.1,

2013-01-04

2012 末日时钟

win32 开发的时钟 ,适合初学者学习, 注册表保存退出显示位置,开机启动, 透明窗体, 注册热键(本程序 ctrl + alt + Q 退出)等等 自己去发现 好好学习下

2012-12-21

GDI+ 开发手册 含源代码 讲解

GDI+ 的详细开发手册 讲解 开发者的助手 强烈推荐

2012-12-12

音频编码解码器库 libZPlay

该库集成了所有支持格式(mp3, mp2, mp1, ogg, flac, ac3, aac, oga, wav and pcm )的编码解码器。库本身是由WINAPI编写,你无须额外的库,也不需要MFC / .NET的支持,只能在Windows下运行。 库直接对声卡播放音乐,简单容易。仅仅3行代码(创建类,打开文件,开始播放),你就可以播放音乐。 使用所支持的编码器,你也同样可以直接从声卡上录制声音(microphone, line-in, CD, ...)和把录制的声音保存到磁盘。 简单,简单,再简单。。。。。。在你的应用程序中只需3行代码便可播放和录制声音。

2012-11-22

sqlite3_mfc.

网上流行的sqlite 封装 在实际应用时修改了里面部分BUG 混合原生态使用

2012-11-01

sqlite3-win32-x86-307.rar

sqlite3-win32-x86-307.rar 如题啊 很好很强大 喜欢原生态的

2012-11-01

TinyXML 解析器

读取和设置xml配置文件是最常用的操作,试用了几个C++的XML解析器,个人感觉TinyXML是使用起来最舒服的,因为它的API接口和Java的十分类似,面向对象性很好。 TinyXML是一个开源的解析XML的解析库,能够用于C++,能够在Windows或Linux中编译。这个解析库的模型通过解析XML文件,然后在内存中生成DOM模型,从而让我们很方便的遍历这棵XML树。 DOM模型即文档对象模型,是将整个文档分成多个元素(如书、章、节、段等),并利用树型结构表示这些元素之间的顺序关系以及嵌套包含关系。

2012-09-29

win32 程序设计 PDF

win32 程序设计 PDF 内容不错 侯捷大哥的 好东西大家分享哈

2012-07-16

局域网聊天工具(功能很全)

自己写的局域网聊天软件 很详细的解释 有动态伸缩窗口 最小到托盘 等功能

2011-10-10

动态数组 很全很详细

自己写的 很详细的注释 还标有注意事项 然后里面一个列子 运行时直接拷贝进去就OK了 主函数放到CPP文件 上面的放到.H里面

2011-08-27

投掷骰子(色子)游戏

有关投掷骰子的写法,主要是考链表 输入投掷的次数 然后排名

2011-08-27

即使通讯软件MYICQ 【类似QQ】

即时通讯软件MyICQ的源代码 里面有详细资料 可以自己照着写

2011-06-24

软件测试方法与技术pdf

介绍一些软件测试的方法和技术 这是一个PDF格式的 方便大家看

2011-03-28

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

TA关注的人

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