自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

人生代码,代码人生。。。

技术改变命运。。。

  • 博客(41)
  • 资源 (39)
  • 收藏
  • 关注

转载 Log4cpp介绍及使用

Log4cpp是一个开源的C++类库,它提供了在C++程序中使用日志和跟踪调试的功能。使用log4cpp,可以很便利地将日志或者跟踪调试信息写入字符流、内存字符串队列、文件、回滚文件、调试器、Windows日志、本地syslog和远程syslog服务器中。1、Log4cpp简介  Log4cpp是个基于LGPL的开源项目,移植自Java的日志处理跟踪项目log4j,并保持了API上的一

2016-04-30 21:21:53 1448

转载 boost.log 架构研究和主要使用总结

前面做了不少boost log的例子,现在来总结一下,下面是boost log库的架构图: 下面总结一下和这个架构相关的知识:1. 如何获得Logging core#include ...boost::shared_ptr core = logging::core::get();2. 如何安装Sink对象一个core可以安装多个Sink,下面的代码假

2016-04-30 21:16:15 1528

转载 Boost log 简单使用

该示例是在VC2010 MFC Unicode环境下使用内容包括1 启动关闭日志2 设置日志存储路径3 设置输出日志等级4 日志是否立即写入文件5 设置单个文件的大小6 设置磁盘最小可利用空间Logger.h[cpp] view plain copy #pragma on

2016-04-30 21:08:59 1566

转载 boost.log要点笔记

常用简写:namespace logging = boost::log;namespace src = boost::log::sources;namespace expr = boost::log::expressions;namespace sinks = boost::log::sinks;namespace attrs = boost::log::attributes;nam

2016-04-30 21:07:16 1605

转载 Boost.log的应用

本文首先介绍了boost.log的几个重要的概念,然后分析其框架结构,最后详细解析了一段示例代码,并总结了将boost.log应用到自己的程序中时的步骤。1. 几个概念日志记录:一个独立的消息包,这个消息包还不是实际写到日志里的消息,它只是一个候选的消息。属性:日志记录中的一个消息片。属性值:那就是上面所说的属性的值了,可以是各种数据类型。日志槽(LOG SINK):日志写向的目标

2016-04-30 21:04:55 1070

转载 C++单元测试工具unittest++使用小结

UnitTest++是一个C++的单元测试工具,这个工具小巧,使用简单.测试结果支持输出到屏幕和保存成xml文件.  这个项目的地址是:http://unittest-cpp.sourceforge.net/UnitTest++.html  本文章是基于版本1.4  使用环境是:linux fedora64 2.6.35.6  使用介绍:  1.如果还没该工

2016-04-30 20:58:24 8430

转载 Linux下Google Test (GTest)测试环境搭建步骤

本文将介绍单元测试工具Google Test(GTest)在Linux操作系统中测试环境的搭建方法。本文属于Google Test使用的基础教程。在Linux中使用Google Test之前,需要对如下知识有一些了解:(1)C/C++编程方法(2)makefile的编写(3)Linux命令行操作(4)GTEST背景知识:它是用来干什么的?它用什么语言编写的?它的一些

2016-04-30 14:10:12 1463

转载 如何用googletest写单元测试

googletest是一个用来写C++单元测试的框架,它是跨平台的,可应用在windows、linux、Mac等OS平台上。下面,我来说明如何使用最新的1.6版本gtest写自己的单元测试。本文包括以下几部分:1、获取并编译googletest(以下简称为gtest);2、如何编写单元测试用例;3、如何执行单元测试。4、google test内部是如何执行我们的单元测试用例的。

2016-04-30 14:04:48 737

转载 玩转Google开源C++单元测试框架Google Test系列(gtest)(总)

前段时间学习和了解了下Google的开源C++单元测试框架Google Test,简称gtest,非常的不错。 我们原来使用的是自己实现的一套单元测试框架,在使用过程中,发现越来越多使用不便之处,而这样不便之处,gtest恰恰很好的解决了。其实gtest本身的实现并不复杂,我们完全可以模仿gtest,不断的完善我们的测试框架, 但最后我们还是决定使用gtest取代掉原来的自己的测试框架

2016-04-30 14:03:05 500

转载 Boost Test学习总结(C++)

1.       常用的C++单元测试框架    测试驱动开发(TDD)已经是一种非常流行的开发方式了,在Java和.Net中都提供了非常好的单元测试框架,最近研究C++下面的单元测试,发现其实在C++中还是有很多选择:CPPUnit:著名的XUnit系列产品之一,熟悉JUnit、NUnit的开发人员可以很快上手。CXXTest:需要进行预处理,需要安装Perl或Python。Bo

2016-04-30 13:54:12 2057

转载 C++单元测试:boost.test

目录[-]C++单元测试:boost.test1) 准备1.1) 编译boost test1.2) 引入boost test2) 使用2.1) Hello the testing world2.2) 自动注册测试套件(Test suites)2.3) 使用测试夹具(Test fixtures)3) 总结附1:样例工程btest_start

2016-04-30 13:51:23 7287

转载 Boost库单元测试使用配置

Boost库单元测试使用配置1 Boost库简介Boost官网:http://www.boost.org/。中文简介见百度百科:http://baike.baidu.com/view/663725.htm。Boost库是一个可移植、提供源代码的C++库,作为标准库的后备,是C++标准化进程的发动机之一。Boost中比较有名气的几个库:Regex 正则

2016-04-30 13:49:16 1458

转载 C++使用oracle的occi库操作oracle数据库

// C++使用oracle的occi库操作oracle数据库//步骤//1、创建OCCI上下文环境//2、创建数据库连接//3、创建Statement对象//4、执行查询SQL//5、执行插入SQL//6、终止Statement对象//7、断开数据库连接//8、释放OCCI上下文环境// 代码示例如下:[cpp] view

2016-04-30 12:29:21 1068

转载 C++访问Oracle数据库

用户有个需求要求使用C++访问Oracle数据库,便打开C++数据库编程的书藉。C++(VC)的数据库访问技术有ODBC,DAO, ADO(OleDb)等技术,这些都是通用的C++数据库访问技术,不仅可以访问Oracle, 还可以用来访问SQL Server, Access等其它数据库。 不过Oracle也有其特有的C++调用机制:一个是Proc*C,一个是OCCI(Oracle 

2016-04-30 12:26:17 2966

转载 C++操作oracle数据库

数据库操作方式:可以采用ADO方式,也可以采用oracle本身提供的Proc*C/C++或者是OCCI方式操作数据库。连接方式:可以是客户端连接、也可以是服务器端连接。数据库配置:无论是何种连接都需要进行数据库连接的配置,一般在ORACLE_HOME下面的network/admin/tnsnames.ora文件中进行配置,如果没有此目录或者是此文件,需要自己手工添加。内容格式大致如

2016-04-30 12:23:38 880

转载 C++通过OCCI操作Oracle数据库详解

今日趁空,尝试用C++操作Oracle数据库。大致步骤列举如下:1.安装OCCI如果oracle数据库默认没有安装OCCI,可以自己从官网上下载与自己数据库版本一致的API,地址:http://www.oracle.com/technetwork/topics/linuxsoft-082809.html  ; 其中包含四个软件包:oracle

2016-04-30 12:20:35 1197

转载 [Zlib]_[初级]_[使用zlib库压缩文件]

场景:1. WIndows上没找到系统提供的win32 api来生成zip压缩文件, 有知道的大牛麻烦留个言。2. zlib比较常用,编译也方便,使用它来做压缩吧。MacOSX平台默认支持zlib库.http://zlib.net3. zlib库里的 src\contrib\minizip\minizip.c  里有压缩例子, 我现在使用的是zlib 1.2.5,用

2016-04-30 12:03:31 1072

转载 使用开源库zlib压缩和解压文件

zlib,一个十分强大的开源压缩解压库,应用示范广泛,很多开源库中都有它的存在(libpng,libzplay,ffmpeg……)。作为普通开发者只要掌握其主要的两个函数就足够用了:int compress(Bytef *dest, uLongf *destLen, const Bytef *source, uLong sourceLen);compress函数将 sour

2016-04-30 11:58:32 9490 2

转载 Crypto++入门学习笔记(DES、AES、RSA、SHA-256)

Crypto++入门学习笔记(DES、AES、RSA、SHA-256)背景(只是个人感想,技术上不对后面的内容构成知识性障碍,可以skip):最近,基于某些原因和需要,笔者需要去了解一下Crypto++库,然后对一些数据进行一些加密解密的操作。笔者之前没接触过任何加密解密方面的知识(当然,把每个字符的ASCII值加1之流对明文进行加密的“趣事”还是干过的,当时还很乐在其中。

2016-04-30 11:51:46 1330

转载 Crypto++学习总结--算法介绍

Crypto++ 算法介绍       Crypto++是开源的C++数据加密算法库,支持如下算法:RSA、MD5、DES、AES、SHA-256等等。对于加密有对称加密和非对称加密。  对称加密:采用单钥密码系统的加密方法,同一个密钥可以同时用作信息的加密和解密,这种加密方法称为对称加密。需要对加密和解密使用相同密钥的加密算法。由于其速度快,对称性加密通常在消息发送方需要加密大量数据

2016-04-30 11:43:28 1671

原创 C++加密库botan混合编译和简单使用

C++加密库botan混合编译和简单使用最近要用到加密数据,找了半天,有许多加密库:botancrypto++tomcryptopensslMCryptCryptlibPolarSSLyaSSLGnuPG尝试后发现还是botan简单好用。botan加密库是什么,百度一下就知道,在这里就不多说了。首先,我不想用lib或者dll,于是乎想直接生成.h和.cpp文件加入工程使用。

2016-04-26 00:54:31 6694 1

转载 hello,intel TBB

Intel Threading BuildingBlocks(Intel TBB)是一个使用ISO C++代码实现的多平台、可扩展并行编程库。但目前为止这方面的中文资料却很少。初步了解TBB时,并非每个人都打算看官方提供的资料,即使是Intel Threading BuildingBlocks Tutorial。准备l  下载编译TBB免费版本的TBB可以从下面的链接下

2016-04-26 00:35:41 496

转载 学习 Intel 线程构建块开源库(TBB)

学习 Intel 线程构建块开源库简介我们发现了 POSIX 线程和基于 Windows 的线程的一种强大替代,即 Intel 线程构建块,该构建块是专为并行编程而设计的基于 C++ 的框架。并行编程是未来的发展趋势,但是如何实现高性能的并行编程,从而有效地利用多核 CPU 呢?使用诸如 POSIX 线程这样的线程库当然也是一种选择,不过,最初引入 POSIX 线程

2016-04-26 00:32:57 4775

转载 TBB(Intel Threading Building Blocks)学习笔记

TBB(Intel Threading Building Blocks)学习笔记并行与并发是相对的,OS里讲的是并发而在架构方面更多的是说并行。并行是分多个层面的,个人认为基本上可以分为这么几个层面:1、指令级的并行;即所谓的微程序、指令流水线等,现在cpu的一级缓存、二级缓存都很大,所以这个cache的效果还是比较好的(基于局部性原理)2、线程级的并行;即同一个时刻多个函数在运行(现在的cp

2016-04-26 00:30:11 1592

转载 Libev和Libuv的区别

参考一:libev和libuv的区别libuv 和 libev ,两个名字相当相近的 I/O Library,最近有幸用两个 Library 都写了一些东西,下面就来说一说我本人对两者共同与不同点的主观表述。高性能网络编程这个话题已经被讨论烂了。异步,异步,还是异步。不管是 epoll 也好,kqueue 也罢,总是免不了异步这个话题。

2016-04-25 23:09:23 1978

转载 利用Libuv编写异步多线程的addon实例

利用libuv编写异步多线程的addon实例  最近cnode上很多TX在问关于node的异步回调以及单线程的事情,今天看了libuv的一些api和demo,自己简单写了一个利用libuv实现异步多线程的addon的例子,真心希望大牛指正啊。demo例子的地址:https://github.com/DoubleSpout/libuv_ex也可以npm

2016-04-25 23:04:11 1726

转载 Libuv库概述

[-]序言本书为谁而写背景本书代码Libuv 基础事件循环Event loopsHello Worldlibuv 的默认事件循环Default loop监视器Watchers空转Idling文件系统读写文件文件系统相关操作Filesystem operations缓冲区与流Buffers and Streams文件变更事件File c

2016-04-25 22:55:20 2273

转载 Libev事件库

事件库之Libev(一)使用LibevLibev的作者写了一份很好的官方Manual,比较的齐全,即介绍了Libev的设计思想,也介绍了基本使用还包括内部各类事件详细介绍。这里略微赘述一下。Libev通过一个 ·struct ev_loop· 结结构表示一个事件驱动的框架。在这个框架里面通过ev_xxx结构,ev_init、ev_xxx_set、ev_xxx_start

2016-04-25 22:48:26 1061

转载 Boost Asio 介绍

一  简介      Boost Asio ( asynchronous input and output)关注异步输入输出。Boost Asio库提供了平台无关性的异步数据处理能力(当然它也支持同步数据处理)。一般的数据传输过程需要通过函数的返回值来判断数据传输是否成功。Boost Asio将数据传输分为两个独立的步骤:采用异步任务的方式开始 数据传输。将传输结果通知调用端

2016-04-25 22:41:07 789

转载 boost asio ——深入框架

要用好它,就必须先了解它,而且不能停止于表面,必须深入到内部。而了解一件事物,先要了解它的框架,再了解它的细节。了解了框架,我们就有了提纲挈领的认识。关于 boost asio 框架结构,在其文档中,用了这样一张图来描述: 简单解释一下:这里由使用者(Initiator)启动一个异步操作(Asynchronous Operation),在启动异步的同时它要负

2016-04-25 22:39:23 593

转载 Loki库使用介绍

[-]C设计模式类库 Loki介绍与用法编译Singleton模式单件模式头文件类型定义示例代码对象工厂 Object Factory头文件类型成员方法示例代码Abstract Factory模式抽象工厂头文件类型演示代码Visitor 模式访问者模式头文件类型示例代码输出结果C

2016-04-25 22:05:29 4062 1

原创 C++中四种进程或线程同步互斥的控制方法

现在流行的进程线程同步互斥的控制机制,其实是由最原始最基本的4种方法实现的。由这4种方法组合优化就有了.Net和Java下灵活多变的,编程简便的线程进程控制手段。    这4种方法具体定义如下 在《操作系统教程》ISBN 7-5053-6193-7 一书中能够找到更加周详的解释      1临界区:通过对多线程的串行化来访问公共资源或一段代码,速度快,适合控制数据访问。    

2016-04-14 01:23:09 6742 1

转载 Linux平台用C++实现信号量,同步线程

Linux平台用C++实现信号量,同步线程    使用Linux平台上现有的信号量sem_t相关的一组API,可以方便地进行线程同步。现在用pthread_mutex_t和pthread_cond_t相关的一组API实现信号量机制。这组API包括:pthread_mutex_init,pthread_cond_init,pthread_mutex_lock,pthrea

2016-04-14 01:20:47 2314

原创 Linux线程同步的三种控制方法

Linux线程同步的三种控制方法l         互斥体Mutexl         信号灯Semophorel         条件变量Conditions什么时候会用上互斥量了?比如你现在有一全局链表,你有几个工作线程。每一个线程从该链表中取出头节点,然后对该头节点进行处理。比如现在线程1正在取出头节点,他的操作如下:Item * p

2016-04-14 01:15:12 484

原创 Linux下进程通信的八种方法

Linux下进程通信的八种方法:管道(pipe),命名管道(FIFO),内存映射(mapped memeory),消息队列(message queue),共享内存(shared memory),信号量(semaphore),信号(signal),套接字(Socket)    (1) 管道(pipe):管道允许一个进程和另一个与它有共同祖先的进程之间进行通信;    (2) 命名管道(FIF

2016-04-14 01:05:21 1907 1

原创 Linux进程间通讯的几种方式

linux进程间通信(IPC)有几种方式,下面将将简单的简述一下:  一。管道(pipe)  管道是Linux支持的最初IPC方式,管道可分为无名管道,有名管道等。  (一)无名管道,它具有几个特点:  1) 管道是半双工的,只能支持数据的单向流动;两进程间需要通信时需要建立起两个管道;  2) 无名管道使用pipe()函数创建,只能用于父子进程或者兄弟进程

2016-04-14 01:03:55 1122

转载 Linux Socket五种I/O模型

目录(?)[-]阻塞IO模型非阻塞IO模型 IO复用模型信号驱动IO异步IO模型5个IO模型的比较selectpollepoll简介1)阻塞I/O(blocking I/O)2)非阻塞I/O (nonblocking I/O)3) I/O复用(select 和poll) (I/O multiplexing)4)信号驱动I/O (signal driv

2016-04-14 00:59:14 630

原创 Linux五种IO模型

Linux五种IO模型转载:http://blog.csdn.net/jay900323/article/details/18141217   Linux五种IO模型性能分析 目录(?)[-]概念理解Linux下的五种IO模型阻塞IO模型非阻塞IO模型 IO复用模型信号驱动IO异步IO模型个IO模型的比较selectpollepoll简介1.

2016-04-14 00:56:23 4135

转载 linux下Epoll实现简单的C/S通信

linux下Epoll实现简单的C/S通信epoll的优点:1.支持一个进程打开大数目的socket描述符(FD)    select 最不能忍受的是一个进程所打开的FD是有一定限制的,由FD_SETSIZE设置,默认值是2048。对于那些需要支持的上万连接数目的IM服务器来说显然太少了。这时候你一是可以选择修改这个宏然后重新编译内核,不过资料也同时指出这样会带来网

2016-04-14 00:50:53 1130

转载 Linux epoll详解

Linux epoll详解一、什么是epollepoll是什么?按照man手册的说法:是为处理大批量句柄而作了改进的poll。当然,这不是2.6内核才有的,它是在2.5.44内核中被引进的(epoll(4) is a new API introduced in Linuxkernel 2.5.44),它几乎具备了之前所说的一切优点,被公认为Linux2.6下性能最好

2016-04-14 00:47:31 1114

网络商城+论文+源码 购物系统jsp ssh mvc java web j2ee毕业设计

网络商城+论文+源码 购物系统jsp ssh mvc java web j2ee毕业设计

2017-02-13

酒店管理 预订系统+源码jsp ssh mvc java web j2ee论文 毕业设计

酒店管理 预订系统+源码jsp ssh mvc java web j2ee论文 毕业设计

2017-02-13

基于JAVA开发的网上商城源码(毕业设计 J2EE)

基于JAVA开发的网上商城源码(毕业设计 J2EE)

2017-02-13

OA 办公自动化系统+论文+源码jsp ssh mvc java web j2ee毕业设计

OA 办公自动化系统+论文+源码jsp ssh mvc java web j2ee毕业设计

2017-02-13

基于J2EE框架的个人博客系统项目毕业设计(代码及论文)

基于J2EE框架的个人博客系统项目毕业设计(代码及论文)

2017-02-13

密码学习题集参考答案(一些思考题).docx

密码学与网络安全课期末考试题库

2016-12-06

Windows下的文件增量备份工具

Windows下的文件增量备份工具

2015-01-24

目录文件实时同步备份工具

该软件用于重要文件的备份,你只需添加源文件路径和目标路径(支持多任务),并设置好自动备份时间间隔和*备份模式,该软件即会按照你设置的时间,自动更新文件(有增加或修改过的文件),并一直循环下去。 *提供两种备份模式: 同步(即保持源路径和目标路径文件一致)、 增量(只备份有更新的文件,不删除不存在的文件) 支持 本地—本地、本地-网络、网络-本地、网络-网络 的数据备份(仅限于局域网)

2015-01-24

Access mdb比较工具

一款功能强大而又非常实用的Access mdb比较工具,一款功能强大而又非常实用的Access mdb比较工具!

2015-01-20

WSAStartup函数

WSAStartup函数;

2013-03-14

UML类图几种关系的总结

UML类图几种关系的总结

2013-03-14

Oracle面试题

Oracle面试题

2013-03-03

C++析构函数使用virtual的原因

C++析构函数使用virtual的原因

2013-03-03

模板的 主版本模板类、全特化、偏特化

模板的 主版本模板类、全特化、偏特化

2013-03-03

for_each 返回值

for_each 返回值实例详解;

2013-03-03

FunctionObject_函数对象

FunctionObject_函数对象

2013-03-03

算法__链表的操作

算法__链表的操作

2013-03-03

UML 聚合和组合的区别

UML 聚合和组合的区别

2013-03-02

extern 'C' 详解

extern 'C' 详解

2013-03-02

c++内存中字节对齐问题详解

c++内存中字节对齐问题详解

2013-03-02

C++中union详解

C++ union 详解&实例

2013-03-02

C++ const使用详解

C++ const使用详解,显浅易懂,适合新手。 绝对值得收藏的技术教程。

2013-03-02

C++ 纯虚函数

C++ 纯虚函数

2012-08-12

C++ 工厂模式 (简单工厂、工厂和抽象工厂)

C++ 工厂模式 (简单工厂、工厂和抽象工厂)

2012-08-12

#pragma comment()的使用

#pragma comment()的使用

2012-08-12

Java 面试题大全及其答案

Java 面试题大全及其答案

2012-08-12

Java面试题全攻略 2012

Java面试题全攻略 2012

2012-08-12

C++ 经典struct面试题.doc

C++ 经典struct面试题

2012-08-12

C++ 笔试面试题集锦(找工作必读)

C++ 笔试面试题集锦(找工作必读)

2012-08-12

C++ 笔试面试题大解析

C++ 常见笔试面试题大解析

2012-08-12

java进阶篇课后编程习题答案

java语言程序设计进阶篇课后编程习题答案,欢迎下载参考,希望可以和大家共同进步!哈哈

2009-02-28

空空如也

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

TA关注的人

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