说说log4cplus
《C++ primer 第五版》已经翻了一段时间了,每天早上的班车上看一个小时。书是好书,可惜很多知识还是停留在表面上。每天除了翻书,一是也找到不合适的方法进一步深入,晚上看到新闻联播的老主题---与国际接轨,得。学这C++咱也接轨一次吧。意外收获一次吧。
参与实际的项目开发是最理想的锻炼,可以一时也没这机会。分析国外大牛的开源项目无异也是学习锻炼的一种捷径。于是就有了下面log4cplus这个话题。
log4cplus是C++编写的开源的日志系统,前身是java编写的log4j系统.受Apache Software License保护。作者是Tad E. Smith。log4cplus具有线程安全、灵活、以及多粒度控制的特点,通过将信息划分优先级使其可以面向程序调试、运行、测试、和维护等全生命周 期; 你可以选择将信息输出到屏幕、文件、
NT event log、甚至是远程服务器;通过指定策略对日志进行定期备份等等。
一、选择的代码版本 log4cpp-1.0
最然不是最新的代码版本,但是用来深入学习C++足够了。正所谓麻雀虽小,五脏俱全!
二、文件目录组织
很多文件是在linux平台采用auto config生成的,这里暂时不关注他的编译细节。本着看代码,深入学习C++的原则看展活动。
有两个目录重点学习,一是src目录,另一个是tests目录。
三、src目录下的文件
各文件类型做个简单的说明:
1、Makefile开头的文件,是autoconf 自动编译生成的,这里不关注
2、C++代码均以.cpp文件作为源码,以.hh文件作为头文件,以区别C语言代码。
3、一个snprintf.c的 C语言代码;
以下会结合《C++ primer第五版》来理解C++.
说说log4cplus的更多相关文章
- 当年只会C# 所以写C++就成这样了! log4cplus -> log4net
属实C++不会. 目前帮朋友弄个小项目需要小折腾一下. c# 一直采用 log4net ,c++的呢,找找有个log4cplus 知识有限,做个通用类吧.别把精力放在这里. 动手创建个静态类. 为了 ...
- log4cplus 直接创建logger 对象
#include <log4cplus/loggingmacros.h> #include <log4cplus/fileappender.h> #include <lo ...
- log4cplus 在配置文件中设置文件路径,程序自动创建目录,且在日志文件前按日期创建相应的目录
#include <string> #include <cstdio> #include <log4cplus/logger.h> #include <log ...
- Log4cplus使用
Log4cplus使用¶ 1.1 简介 log4cplus是C++编写的开源日志系统,前身是java编写的log4j日志系统.log4cplus具有线程安全.灵活.以及多粒度控制的特点,通过将信息划分 ...
- 【原】log4cplus使用说明
网上关于开源日志工具log4cplus的说明有很多,但大多略显复杂,本文主要从实用的角度,介绍一种最简单而且又实用的方法.本文的方法已经足够满足实际工程中的使用需求,而且不需要很复杂的流程,可以实现. ...
- Log4Cplus的介绍
Log4Cplus是一款很好的开源日志打印程序,该日志打印程序的配置文件为类似INI的文件,以下为该日志打印程序配置文件中的说明: 1.#—注释行的开头表示,即以该字符开头的行,改日志程序不解释改行内 ...
- log4cplus配置文件使用
简介 log4cplus是log4j的c++移植版,是c++中一个很好的打印日志的库.它与另外一个c++的log库log4cxx相比较,好处是不依赖于libapr和libaprutil,可以静态链接到 ...
- 开源日志库log4cplus+VS2008使用
一.简介 log4cplus是C++编写的开源的日志系统,功能非常全面.本文介绍如何在Windows+VS2008中使用该日志库. 二.下载 可从网站[url]http://log ...
- 使用最新的log4cplus(1.1.1)隔离不同的 log 文件输出
部分参考了博客. http://www.cppblog.com/tx7do/articles/11719.html 基于脚本配置来过滤log信息 除了通过程序实现对log环境的配置之外,log4cpl ...
随机推荐
- 临时禁用Resharper
Visual Studio 菜单 –> 工具 –> 选项 –> ReSharper –> Suspend按钮
- 如何在网页中显示pdf
用如下的html代码即可(例子): <div class="postBody"> <div id="cnblogs_post_body"> ...
- 转载--PHP json_encode() 和json_decode()函数介绍
转自:http://www.nowamagic.net/php/php_FunctionJsonEncode.php 转自:http://www.jb51.net/article/30489.htm ...
- POJ3616 Milking Time 简单DP
注意0,1,.....,N是时间点,i~i+1是时间段 然后就是思路:dp[i]代表到时间点 i 获得的最大价值, 1:dp[i]=max(dp[i],dp[s-r]+e),表示有以s为开头,i为结尾 ...
- JS兼容性处理
百度 - 终端适配API 适合服务器端使用.POST客户端传递的http头信息越多,得到的适配信息越准确.百度返回的数据为: 正确情况: { device_type :/*1:手机2:pc*/ os: ...
- opencv 在工业中的应用:模板匹配
模板匹配在工业中经常有两个用途,一模板匹配进行产品定位,二根据匹配度来判断是OK的产品还是NG的产品.我用OPENCV做了个模板匹配定位的DEMO. (1)点击打开图像按钮打开一幅图像 (2)点击定义 ...
- Mac 中查看端口占用进程并杀死
sudo lsof -i :9000 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME java 61342 a 313u IPv6 0x11111 ...
- 【暑假】[实用数据结构]KMP
KMP算法 KMP算法是字符串匹配算法,可以在O(n)的时间完成,算法包含两部分,分别是:构造适配函数与两串匹配. 失配边的使用大大提高了算法效率,可以理解为已经成功匹配的字符不在重新匹配,因为我们已 ...
- 将COleDateTime类型数据转换成char *数据
用OpenCV做多摄像头校准时间,在图像上显示时间信息,需求要将COleDateTime类型数据转换成char *数据 具体代码如下: 1: COleDateTime m_checkDate; 2: ...
- jqgrid 中设置列不排序
背景 今天在做系统的功能时,当时有这么个需求:在添加了一行数据时,原本的排序的自动就不能再排序,也就是排序失效. 1. 使用onSortCol事件禁止排序列 当时使用了初始化时,使用onSortCol ...