c++ code
文章平均质量分 66
sunyongsunyong
这个作者很懒,什么都没留下…
展开
-
c++开源日志库log4cplus
1. 简介log4cplus是C++编写的开源的日志系统,The purpose of this project is to port the excellentLog for Java(log4j)logging library to C++。log4cplus具有灵活、强大、使用简单、多线程安全的特点,实在是杂牌军、游击队的福音。2. 安装使用(Linux)log4cp转载 2015-11-14 13:36:31 · 473 阅读 · 0 评论 -
设计模式总结,应用场景
c++设计模式:简单工厂模式工厂模式有一种非常形象的描述,建立对象的类就如一个工厂,而需要被建立的对象就是一个个产品;在工厂中加工产品,使用产品的人,不用在乎产品是如何生产出来的。从软件开发的角度来说,这样就有效的降低了模块之间的耦合。使用情景: 在不确定会有多少个处理操作时应该考虑使用简单工厂模式,如针对同样的接收到的数据,处理的逻辑可能会不同,可能以后还会增加新原创 2017-04-19 11:09:16 · 1522 阅读 · 0 评论 -
QT之自定义的QSS
如这一篇QSS样式表 http://blog.csdn.net/liang19890820/article/details/51992070简述在Qt之QSS(样式表语法)一节讲过关于“设置对象属性”的用法,里面有一条很重要的原则是:任何可被识别的Q_PROPERTY都可以使用qproperty-语法设置。属性下面我们以QLabel为例,讲解如何在QSS中使用属性。class Q_WIDGETS原创 2018-01-19 15:38:23 · 1201 阅读 · 0 评论 -
基于开源库tufao,一个C + +的异步 Web 框架,使用Qt的对象的通信系统(信号与槽)
基于开源库tufao,一个C + +的异步 Web 框架,使用Qt的对象的通信系统(信号与槽)tufao是一个由QT编写的HTTP服务器。 tufao代替apache来实现http的通信。本实例在window平台,以源码形式加载到Qt pro项目,Qt mingw版本编译测试运行。ps:code依赖boost库,请自行下载,修改.pro所依赖boost路径。完整版本源码下载> 步骤:1) 在...原创 2018-02-11 10:33:10 · 1488 阅读 · 0 评论 -
centos 编译安装opencv测试
1.CentOS具体版本: 2.安装步骤: 1).安装依赖: //sudo yum groupinstall "Development Tools" -y sudo yum installgcc cmake gtk2-devel numpy pkgconfig -y 2).下载opencv3.3.1.zip文件到~/Downloads/文件夹:...原创 2019-06-19 15:43:22 · 273 阅读 · 0 评论 -
利用qmake生成Makefile文件
在linux下写程序,免不了要写Makefile文件,用automake,总感觉比较麻烦,linux人喜欢做麻烦的事,以显得风格迥异。其实用qmake生成Makefile文件相当简单。1 装好qmake工具2 在源码工程目录下,运行qmake -project这样会生成一个*.pro文件。3 运行qmake -makefile *.pro,生成Makefile文件。此Makefile文件,包含很多...转载 2018-06-19 17:19:21 · 925 阅读 · 0 评论 -
基于Qt封装window service服务程序
基于Qt封装window service服务程序下载 1: 封装window服务应用流程:程序入口继承QtService,重写start pause resume方法,实现服务的启动,暂停,恢复功能。class MyWindowServiceAPP : public QtService<QApplication>{public: MyWindowServi...原创 2018-08-15 14:29:39 · 9798 阅读 · 7 评论 -
QT的qnetworkservice,QNetworkAccessManager网络请求,异步和同步阻塞封装,加入lambda和信号槽封装请求响应
QT的qnetworkservice,QNetworkAccessManager网络请求,异步和同步阻塞封装,加入lambda和信号槽封装请求和相应。【封装源码下载】1:示例(1) 简单示例/* 使用lambda特性 */static HttpService http;http.get("https://www.qt.io") .onResopnse([](QByte...原创 2019-09-27 11:00:47 · 1493 阅读 · 1 评论 -
以一种标准的办法,获取工作目录
void GetWorkingFolder(std::string& folder){ folder.resize(MAX_PATH*2 + 1, '\0'); //留长一点,防止后面再连接一个Cloudwalk时出错 //获取当前程序目录,如果是C盘,则获取APPDATA目录,然后在末尾添加目录后缀 HANDLE hExeHandle = GetModuleH...原创 2019-10-09 13:42:59 · 155 阅读 · 0 评论 -
QT model/view 详细资料 总结
Qt 4推出了一组新的item view类,它们使用model/view结构来管理数据与表示层的关系。这种结构带来的功能上的分离给了开发人员更大的弹性来定制数据项的表示,它也提供一个标准的model接口,使得更多的数据源可以被这些item view使用。这里对model/view的结构进行了描述,结构中的每个组件都进行了解释,给出了一些例子说明了提供的这些类如何使用转载 2015-10-23 15:36:35 · 1027 阅读 · 0 评论 -
dll,exe数据连接交互
主应用程序加载DLL,需要DLL处理数据并交互至主应用时,使用回调函数方便实现:typedef void (*CALLBACKFUNC)(WPARAM wparam,LPARAM lparam); //原型DLL interface:DLLEXPORT void PASCAL CMDRegCallBackFunc(LPARAM pCallBack); // 设原创 2015-10-16 17:45:19 · 915 阅读 · 0 评论 -
boost::function 用来注册bing函数(switch N多case的解决方案)
工作中需要根据不同类型来调用不同函数接口时,通常使用switch case来实现switch(itemType) { case ...; case ...; . . . } 不断的添加新的需求会导致case分支很多,使用boost库解决方案:typedef boost::function TypeOnUseItemHandler; //原创 2013-10-21 14:11:49 · 508 阅读 · 0 评论 -
标准ASCII表
ASCII值控制字符ASCII值控制字符ASCII值控制字符ASCII值控制字符0NUT32(space)64@96、1SOH33!65转载 2012-12-06 13:27:06 · 340 阅读 · 0 评论 -
WINCE 读取注册表数值
读取HKEY_CURRENT_USER\\comm\\PWRSwitch中number的值DWORD dwStatus = 0;HKEY hKey = NULL;DWORD dwValue = 0;DWORD cb = sizeof(DWORD);dwStatus = RegOpenKeyEx( HKEY_CURRENT_USER,_T("comm\\PWRSwitch"原创 2012-12-20 16:13:35 · 399 阅读 · 0 评论 -
Google Protocol Buffer 的使用和原理
简介什么是 Google Protocol Buffer? 假如您在网上搜索,应该会得到类似这样的文字介绍:Google Protocol Buffer( 简称 Protobuf) 是 Google 公司内部的混合语言数据标准,目前已经正在使用的有超过 48,162 种报文格式定义和超过 12,183 个 .proto 文件。他们用于 RPC 系统和持续数据存储系统。Protocol转载 2013-01-07 15:03:30 · 347 阅读 · 0 评论 -
经典开源C/C++工具包
C/C++ SOAP工具包gSOAPgSOAP一种跨平台的C和 C++软件开发工具包。生成C/C++的RPC代码,XML数据绑定,对SOAP Web服务和其他应用形成高效的具体架构解析器,它们都受益于一个XML接口。 这个工具包提供了一个全面和透明的XML数据绑定解决方案,Autocoding节省大量开发时间来执行SOAP/XML Web服务中的C/C++。此外,使用XML数据绑定转载 2013-01-10 09:42:29 · 912 阅读 · 0 评论 -
google protocol buffer lite_WINCE 总结
在网站 http://code.google.com/p/protobuf/downloads/list上可以下载 Protobuf 的源代码。然后解压编译安装便可以使用它了。 使用2.4.1版本,源代码目录下vsprojects/libprotobuf-lite.vcproj,以及自己整理的lite工程, (1):Create a Win32 Smart Device Pr原创 2013-01-21 11:30:44 · 583 阅读 · 0 评论 -
c++ printf 使用
1.调用格式为 printf("格式化字符串>", 参量表>);其中格式化字符串包括两部分内容: 一部分是正常字符, 这些字符将按原样输出; 另一部分是格式化规定字符,以"%"开始, 后跟一个或几个规定字符,用来确定输出内容格式。参量表是需要输出的一系列参数,其个数必须与格式化字符串所说明的输出参数个数一样多, 各参数之间用","分开, 且顺序一一对应,否则将会出现意想原创 2013-03-06 22:04:39 · 12576 阅读 · 0 评论 -
C++ Socket编程步骤
sockets(套接字)编程有三种,流式套接字(SOCK_STREAM),数据报套接字(SOCK_DGRAM),原始套接字(SOCK_RAW);基于TCP的socket编程是采用的流式套接字。服务器端编程的步骤:1:加载套接字库,创建套接字(WSAStartup()/socket());2:绑定套接字到一个IP地址和一个端口上(bind());3:将套接字设置为监听模式转载 2013-03-19 15:53:34 · 414 阅读 · 0 评论 -
Socket编程之简单介绍
一:套接字编程相关知识点Socket概念:套接字是一种通信机制,凭借这种机制,客户/服务器系统的开发工作既可以在本地单机进行,也可以跨网络进行。网络中的进程是通过socket来通信的。socket起源于Unix,而Unix/Linux基本哲学之一就是“一切皆文件”,都可以用“打开open –> 读写write/read –>关闭close”模式来操作。我的理解就是Soc转载 2013-03-19 17:22:08 · 997 阅读 · 0 评论 -
c++简单读写文本,统计文件的行数,读取文件数据到数组
fstream提供了三个类,用来实现c++对文件的操作。(文件的创建、读、写)。ifstream -- 从已有的文件读 ofstream -- 向文件写内容fstream - 打开文件供读写文件打开模式:ios::in 读ios::out 写ios::app 从文件末尾开始写ios::binar原创 2013-03-19 17:06:19 · 1151 阅读 · 0 评论 -
C++类单例运行(code)
class Singleton{public: static Singleton * GetInstance() { if(m_pInstance==NULL) m_pInstance=new Singleton(); return m_pInstance; }private: Sin原创 2012-12-04 13:59:19 · 235 阅读 · 0 评论 -
关于函数strtok和strtok_r的使用要点和实现原理(一)
buffernulllibrary百度文档网络目录(?)[+]函数的作用是分解字符串所谓分解即没有生成新串只是在s所指向的内容上做了些手脚而已因此源字符串s发生了变化若要在第一次提取子串完毕之后继续对源字符串s进行提取应在其后第二次第三次第n次的调用中将strtok的第一个参数赋为空值NULL关于函数返回值的探讨参数 分隔符delim的探讨delim是分隔符的集合待分解的字符串转载 2013-04-12 12:58:51 · 459 阅读 · 0 评论 -
QT中处理Windows消息
为了能处理某些qt无法处理的事件,可以自己处理windows事件。处理windows事件是重写QApplication::winEventFilter(MSG*,long)函数来实现的。假如功能想捕获所有在窗体上的鼠标中键按下的消息,需要继承QApplication类: class MyApplication:public QApplication { Q_OBJECT原创 2012-12-04 15:10:33 · 2818 阅读 · 0 评论