C++
文章平均质量分 72
huanggang982
我是一个性格开朗,生活乐观,关注科技,金融,中国传统文化,喜欢打篮球,听音乐,看电影的人。
展开
-
Linux下开发Qt界面程序时命令行传参数的一个坑
今天在Linux下开发Qt界面程序时发现一个奇怪的问题,程序执行如下命令却会打印日志和弹出对话框./test -name xxx代码如下:#include <QApplication>#include <QMessageBox>#include <QDebug>int main(int argc, char *argv[]){ QApplication a(argc, argv); if(argc != 3 || strcmp(a原创 2021-02-26 13:58:32 · 465 阅读 · 0 评论 -
走进开源代码(三)
由于工作的原因,虽然是一名C++程序员,平时工作中还是使用的C++99,而比特币v0.20.1的源码是C++11写的,虽然之前对C++11也有些了解,毕竟语言这东西不用就会忘,更何况只是了解,所以在看的时候遇到C++11的代码会花些时间重新学习,其实虽然v0.20.1版本比较新,但很多代码与两年前的是一样的,尤其是我看的bitcoind的初始化,参数设置相关的代码,其实在CSDN已经有很多大神写过比特币源码的学习笔记了,比如aabbc59的区块链专栏,朝歌1122的bitcoin专栏,在我看代...原创 2021-01-26 14:02:53 · 240 阅读 · 0 评论 -
使用Poco库进行加解密和签名验签
最近一个朋友让我帮忙找一下使用Poco库进行非对称加密的例子,通过百度,Google找到两个不错的在此总结一下:Poco开源代码库地址:https://github.com/pocoproject/poco在Crypto/testsuit/src/RSATest.h和RSATest..cpp有示例代码可以参考。下面是摘自另一个网站上的部分代码,图文并茂,感觉讲得很好,拿来分享给大家。非对称加解密过程如图:代码如下:#include "Poco/Crypto/RSAKey.h"原创 2020-09-28 11:42:02 · 885 阅读 · 0 评论 -
[转]ffmpeg在vs2008中的使用
最终采用了https://blog.csdn.net/smilestone_322/article/details/7605101的方案转自:http://blog.sina.com.cn/s/blog_62949ff40101egbw.html1.到http://ffmpeg.zeranoe.com/builds/下载ffmpeg-20131120-git-e502783-win32...转载 2019-12-23 15:21:54 · 321 阅读 · 0 评论 -
vs2008静态编译Qt4.8.6
转自:http://m.blog.csdn.net/blog/mowwwcom/399958931、编译准备源码版本qt-opensource-windows-x86-vs2008-4.8.6.exe下载地址:http://mirrors.hust.edu.cn/qtproject/official_releases/qt/4.8/4.8.6/qt-opensource转载 2015-12-02 10:52:53 · 998 阅读 · 1 评论 -
C++模板元编程(C++ template metaprogramming)
转自:http://www.cnblogs.com/liangliangh/p/4219879.html实验平台:Win7,VS2013 Community,GCC 4.8.3(在线版) 所谓元编程就是编写直接生成或操纵程序的程序,C++ 模板给 C++ 语言提供了元编程的能力,模板使 C++ 编程变得异常灵活,能实现很多高级动态语言才有的特性(语法上可能比较丑陋,一些历史原因转载 2015-12-19 13:20:49 · 762 阅读 · 0 评论 -
基于数组的循环队列(C++模板实现)
转自:http://blog.sina.com.cn/s/blog_8689e44d0100su2a.html循环队列使用数组实现的话,简单、方便。之前实现的队列,当尾端索引到达队列最后的时候,无论前面是否还有空间,都不能再添加数据了。循环队列使得队列的存储单元可以循环利用,它需要一个额外的存储单元来判断队列是否已满。头文件如下:#ifndef CIRCULARQUEUE_HPP_转载 2015-12-19 13:22:57 · 686 阅读 · 0 评论 -
多线程下控制台输出乱序的问题
我看到很多人对这样一个问题寻求帮助:在多线程时,往控制台窗口输出的内容是乱序的。举个非常简单的例子,如下:#include "stdafx.h"#include using namespace std;DWORD WINAPI ThreadProc1( LPVOID lpParameter转载 2015-12-21 16:47:47 · 3598 阅读 · 1 评论 -
如何知道动态库是32位还是64位的
转自:http://ilewen.com/questions/432你可以用VS调用dumpbin并使用headers选项,例如:dumpbin /headers my32bit.dll输出:PE signature foundFile Type: DLLFILE HEADER VALUES 14C machine (x86)转载 2015-12-24 14:40:54 · 2339 阅读 · 0 评论 -
CPU核心温度获取
转自:http://www.68idc.cn/help/buildlang/ask/20150310264569.html最近在研究怎样获取CPU的温度,网上也有一些办法,但都不算完整,没有清晰的解决方案,现在把我的方法完整的说一下,其实是很简单的东西,没有什么很复杂的。有些地方班门弄斧,各位大侠多多担待。因为我用的是Intel的CPU,所以只做了Intel的,APU的没办法测试,感兴趣的转载 2015-12-24 15:09:56 · 4664 阅读 · 0 评论 -
在vs2008 C++下调试控制台程序的心得及技巧
在vs2008 C++下调试控制台程序的心得及技巧以下的内容转载自:http://blog.sina.com.cn/s/blog_62466e480100f8cw.html Visual Studio 2008环境与VC6.0的环境存在着比较大的区别,下面就一些小小的区别在这里做一些探讨,欢迎指教!1、如果是调试控制台程序,很多时候点击“启动调试”后是一闪而过,此时可有转载 2015-12-16 10:40:19 · 872 阅读 · 0 评论 -
C++指向类成员函数的指针详细解析
由于这几天在开发中要用到函数指针,所以就整理了一下关于函数指针的概念首先 函数指针是指向一组同类型的函数的指针;而类成员函数我们也可以相似的认为,它是指向同类中同一组类型的成员函数的指针,当然这里的成员函数更准确的讲应该是指非静态的成员函数。前者是直接指向函数地址的,而后者我们从字面上也可以知道 它肯定是跟类和对象有着关系的。函数指针实例:复制代码代码如下:转载 2015-12-11 11:55:09 · 536 阅读 · 0 评论 -
valgrind
转自:http://blog.sina.com.cn/s/blog_4c98b9600100jq4v.htmlvalgrind --tool=memcheck --leak-check=full --show-reachable=yes -v ./docParser sample.docMemcheck 工具主要检查下面的程序错误:使用未初始化的内存 (Use o转载 2015-09-30 09:58:55 · 2397 阅读 · 0 评论 -
typedef struct与struct的区别
1. 基本解释 typedef为C语言的关键字,作用是为一种数据类型定义一个新名字。这里的数据类型包括内部数据类型(int,char等)和自定义的数据类型(struct等)。 在编程中使用typedef目的一般有两个,一个是给变量一个易记且意义明确的新名字,另一个是简化一些比较复杂的类型声明。 至于typedef有什么微妙之处,请你接着看下面对几个问题的具体阐述。转载 2015-07-31 14:33:18 · 358 阅读 · 0 评论 -
基于C语言EOF与getchar()的使用详解
希望本文可以对初学C的朋友提供一点帮助,也希望能和其他朋友进行交流。其中理解不对的地方若能得到指正和建议,本人将不胜感激.大师级经典的著作,要字斟句酌的去读,去理解。以前在看K&R的The C Programming Language(SecondEdition)第1.5节的字符输入/输出,被getchar()和EOF所迷惑了。可能主要还是由于没有搞清楚getchar()的工作原理和E转载 2015-06-14 15:40:47 · 436 阅读 · 0 评论 -
如何解决ubuntu中使用SDL_OpenAudio失败返回错误信息no such audio device
If you built your own SDL, you probably didn't have development headers for PulseAudio (or ALSA), so it's trying to use /dev/dsp, which doesn't exist on many modern Linux systems (hence, SDL_Init(转载 2015-05-28 23:28:37 · 5648 阅读 · 0 评论 -
之前收藏了一个动态循环队列的代码,不太好用,改了改,留着备用
#ifndef _QUEUE_H_#define _QUEUE_H_#include #include #include using namespace std; namespace my_space { template class queue { public: queue()原创 2015-05-05 17:22:36 · 418 阅读 · 0 评论 -
bmp转jpg(使用libjpeg)
转自:http://www.cnblogs.com/tiandsp/archive/2012/12/03/2799561.htmlpg压缩原理可以参考这篇文章http://hi.baidu.com/tiandsp/item/f5a2dcde6ef1405bd73aae41,我很早以前转的一篇文章。 没有使用libjpeg的压缩代码可以看看这篇文章http://hi.baidu.c转载 2015-04-07 14:43:59 · 797 阅读 · 0 评论 -
Qt工程文件中QT -= core gui与Config-=qt的区别
使用QtCreator创建工程,不想使用qt库,我平时都是通过QtCreator创建Empty Qt Project创建一个空工程,然后在pro文件中加上QT -= core gui来配置的,但是通过QtCreator创建Plan C++ project,发现pro文件是Config-=qt这么配置的,那么两者有什么区别么?通过编译后对比编译输出发现,我平时使用的方法编译选项里多了-D_REENT原创 2016-02-18 16:09:37 · 9206 阅读 · 2 评论 -
C++三大函数(The Big Three)
C++三大函数(The Big Three)转自:http://www.cnblogs.com/chenyg32/p/3649190.htmlC++三大函数:析构函数复制构造函数operator=析构函数函数模样:~S()当一个对象超出作用域或执行delete的时候,析构函数就被调用。复制构造函数函数模样:S(const S& s)以下情况,复制构造转载 2016-03-25 10:29:08 · 938 阅读 · 0 评论 -
STL中改变map的默认比较方式
转自:http://www.cnblogs.com/zjfdlut/archive/2011/08/12/2135698.html大家知道,STL中的map底层是用红黑树实现的,其泛型原型如下:template class _Key, class _Tp, class _Compare, class _Alloc>class map { ......转载 2016-03-25 17:03:21 · 436 阅读 · 0 评论 -
[转]c++new和new()区别(了解)
转自:https://www.cnblogs.com/zzyoucan/p/3918613.html我们在C++程序中经常看到两种new的使用方式:new A以及new A()。那么这两种究竟有什么区别呢?调用new分配的内存有时候会被初始化,而有时候不会,这依赖于A的类型是否是POD(Plain old data)类型,或者它是否是包含POD成员、使用编译器生成默认构造函数的类。附...转载 2019-06-11 17:49:24 · 1032 阅读 · 0 评论 -
Learning OpenCV 3 学习笔记
第一章 概述当前模块:core:是库的一部分,包含基本对象类型和它们的基本操作。imgproc:图像处理模块包含图像的基本变换,包括滤波器和类似的卷积运算符。highgui (在OpenCV3.0中分成了imgcodecs, videoio, and highgui):此模块包含用户界面功能,可用于显示图像或进行简单的用户输入。它可以被认为是一个非常轻量级的窗口UI工具包。vi...原创 2019-01-12 15:10:01 · 771 阅读 · 0 评论 -
Qt and computer vision
1.安装visual studio profession 2015 或者visual studio profession community 2015 安装visual c ++工具箱,如下图所示,确保选择所有这些工具箱 2.安装调试器(Debugging Tools for Windows) 我的是win7 64位旗舰版+sp1,所以从这里下载了调试器(dbg_x8...翻译 2019-01-05 22:41:55 · 202 阅读 · 0 评论 -
OpenCV 4.0 新特性
OpenCV 4.02018.11.20在发布3.0版的近3.5年后,我们很高兴推出4.x系列的第一个稳定版本。版本特性:OpenCV现在是C ++ 11库,需要兼容C++ 11标准的编译器。所需的最低CMake版本已提升至3.5.1。 很多OpenCV 1.x的C API已被删除 在核心模块中延续性(在XML,YAML或JSON中存储和加载结构化数据)已在C ++中完全重新实...翻译 2019-01-05 13:20:10 · 2362 阅读 · 1 评论 -
How to choose between openH264 and x264 decoder
转自:https://stackoverflow.com/questions/42220081/how-to-choose-between-openh264-and-x264-decoderAsk:down votefavoriteI'm using the dev build from zeranoe.com which h转载 2018-01-04 15:00:26 · 975 阅读 · 0 评论 -
C/C++可变参数,“## __VA_ARGS__”宏的介绍和使用
转自:http://www.linuxidc.com/Linux/2014-06/102923.htm在阅读代码的时候,在一个宏定义语句中,发现了个之前未曾见过的编译器预定义宏:“__VA_ARGS__”。当时,从代码语句中推测它代表宏参数:“…”(本文称之为省略号),依稀记得printf函数声明中有使用这个省略号,大概的意思是表示可变化的参数,但未深入了解。在网上看了相关文章的介转载 2017-09-25 10:34:13 · 604 阅读 · 0 评论 -
典型的 C++ 程序员成长经历
转自:http://www.cnblogs.com/wangkangluo1/archive/2012/05/13/2498341.html一个典型的 C++ 程序员成长经历:1. 完整的学一遍 C++ 所有语言特性,典型书籍 "The C++ Programming Language" Part1, Part2, "C++ Primer" 感觉 C++ 像转载 2017-08-11 15:55:35 · 395 阅读 · 0 评论 -
引领Boost(一)(开篇)
转自:http://www.cppblog.com/mzty/archive/2007/08/15/30095.html引领boost(开篇)一BOOSTBoost带领你远远地超越了C++标准库,它使得C++编程更优雅、更有活力、更高产。(引自:Beyond the C++ Standard Library: An Introduction to Boost)(慢慢体会哦!转载 2017-08-11 15:52:45 · 369 阅读 · 0 评论 -
8大常用通讯中间件/MQ使用总结
转自:http://www.voidcn.com/blog/fanyun_01/article/p-6151771.html看来ZeroMQ和Kafka在这些中间件当中还是比较突出的。8大通讯中间件/MQ,比较常用且有名的有如下几种:1. ACE:ACE提供了一组丰富的可重用C++包装外观(WrapperFacade)和框架组件,可跨多种平台完成通用的通信转载 2017-08-01 11:19:09 · 1098 阅读 · 0 评论 -
VS2013 密钥 – 所有版本
Visual Studio Ultimate 2013 KEY(密钥):BWG7X-J98B3-W34RT-33B3R-JVYW9Visual Studio Premium 2013 KEY(密钥):FBJVC-3CMTX-D8DVP-RTQCT-92494Visual Studio Professional 2013 KEY(密钥): XDM3T-W3T3V-MGJWK-8BF转载 2016-12-19 11:11:57 · 710 阅读 · 0 评论 -
Windows下编译websocketpp
系统环境是win7 64位,安装了vs2008准备工作1.到https://github.com/zaphoyd/websocketpp/tags下载websocketpp最新稳定版0.6.02.到https://sourceforge.net/projects/boost/files/boost/1.62.0/下载boost最新版本1.62.03.到http://download原创 2016-12-05 09:42:29 · 5033 阅读 · 0 评论 -
一文说尽C++赋值运算符重载函数(operator=)
转自:http://www.cnblogs.com/zpcdbky/p/5027481.html写在前面: 关于C++的赋值运算符重载函数(operator=),网络以及各种教材上都有很多介绍,但可惜的是,内容大多雷同且不全面。面对这一局面,在下在整合各种资源及融入个人理解的基础上,整理出一篇较为全面/详尽的文章,以飨读者。正文:Ⅰ.举例例1转载 2016-11-08 16:05:24 · 421 阅读 · 0 评论 -
RedHat安装GCC问题-解决依赖问题
转自:http://www.linuxdiyf.com/linux/11017.htmlRedHat Linux在安装gcc时需要cpp和cloog-ppl但是在安装cpp的时候需要这个依赖:libmpfr.so.1()(64bit) is needed by cpp-4.4.6-3.el6.x86_64安装cloog-ppl的时候需要这2个依赖:libppl.so.7()(64b转载 2016-09-26 13:36:12 · 1841 阅读 · 0 评论 -
DuplicateHandle用法
The DuplicateHandlefunction creates a duplicate handle. The returned duplicate is in the caller's process space.(从当前进程复制句柄到其他进程空间)//ALL of the following code is executed by Process S.//Create a转载 2016-05-04 20:40:39 · 2069 阅读 · 0 评论 -
windows编译libjpeg库
PMVS对图像进行读写输入时考虑了多种后缀的文件类型,对于jpeg类型用到了jpeglib。1.jpeglib的编译下载源代码下载地址:http://www.ijg.org/,选择windows format file解压源代码,修改源代码中jconfig.vc为jconfig.h 添加环境变量PATH,C:\Program Files(X86)\Microsoft Visu转载 2015-04-01 16:47:47 · 1154 阅读 · 0 评论 -
YUV422 to JPEG ---libjpeg 参考网页
找了好久终于找到一个例子,还没试验,先转载。转自:http://blog.163.com/shuangxi_p/blog/static/107224272011374405634/#include "jpeglib.h"int yuv422_to_jpeg(unsigned char *data, int image_width, int image_height, F转载 2015-04-02 16:32:18 · 2421 阅读 · 4 评论 -
Eclipse官网下载页面的Packages 和Developer Builds区别
Eclipse官网下载页面的Packages 和Developer Builds区别转自:http://www.myexception.cn/eclipse/413416.html百度有人提问:eclipse官网下载eclipse时发现有Packages 和Developer Builds两个目录,其中的下载版本都差不多,但是不知道这两个有什么区别我今天去Eclipse官网下载转载 2013-11-14 09:08:45 · 1551 阅读 · 0 评论 -
[转]Linux 下编译、安装、配置 QT
Linux 下编译、安装、配置 QT 转载:http://emouse.cnblogs.com打算做嵌入式图像处理,计划方案嵌入式Linux+OpenCV+QT,昨天简单入门OpenCV今天看看QT,QT就先弄Linux下面的,回家之前争取把基本的摸通,然后能在板子上跑起来。软件环境Linux:Ubuntu 12.04 X86QT:4.8.4关于QT安装QT的早转载 2013-09-29 11:28:01 · 852 阅读 · 0 评论 -
最新的qt历史版本下载网站
最新的qt历史版本下载网站http://qt-project.org/downloadshttp://download.qt-project.org/archive/qt/原创 2013-09-26 14:49:43 · 1366 阅读 · 0 评论