《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的更多相关文章

  1. 当年只会C# 所以写C++就成这样了! log4cplus -> log4net

    属实C++不会. 目前帮朋友弄个小项目需要小折腾一下. c# 一直采用 log4net ,c++的呢,找找有个log4cplus  知识有限,做个通用类吧.别把精力放在这里. 动手创建个静态类. 为了 ...

  2. log4cplus 直接创建logger 对象

    #include <log4cplus/loggingmacros.h> #include <log4cplus/fileappender.h> #include <lo ...

  3. log4cplus 在配置文件中设置文件路径,程序自动创建目录,且在日志文件前按日期创建相应的目录

    #include <string> #include <cstdio> #include <log4cplus/logger.h> #include <log ...

  4. Log4cplus使用

    Log4cplus使用¶ 1.1 简介 log4cplus是C++编写的开源日志系统,前身是java编写的log4j日志系统.log4cplus具有线程安全.灵活.以及多粒度控制的特点,通过将信息划分 ...

  5. 【原】log4cplus使用说明

    网上关于开源日志工具log4cplus的说明有很多,但大多略显复杂,本文主要从实用的角度,介绍一种最简单而且又实用的方法.本文的方法已经足够满足实际工程中的使用需求,而且不需要很复杂的流程,可以实现. ...

  6. Log4Cplus的介绍

    Log4Cplus是一款很好的开源日志打印程序,该日志打印程序的配置文件为类似INI的文件,以下为该日志打印程序配置文件中的说明: 1.#—注释行的开头表示,即以该字符开头的行,改日志程序不解释改行内 ...

  7. log4cplus配置文件使用

    简介 log4cplus是log4j的c++移植版,是c++中一个很好的打印日志的库.它与另外一个c++的log库log4cxx相比较,好处是不依赖于libapr和libaprutil,可以静态链接到 ...

  8. 开源日志库log4cplus+VS2008使用

    一.简介     log4cplus是C++编写的开源的日志系统,功能非常全面.本文介绍如何在Windows+VS2008中使用该日志库.   二.下载     可从网站[url]http://log ...

  9. 使用最新的log4cplus(1.1.1)隔离不同的 log 文件输出

    部分参考了博客. http://www.cppblog.com/tx7do/articles/11719.html 基于脚本配置来过滤log信息 除了通过程序实现对log环境的配置之外,log4cpl ...

随机推荐

  1. Eclipse文件编码设置的问题

    Eclipse中设置编码的方式 如果要使插件开发应用能有更好的国际化支持,能够最大程度的支持中文输出, 则最好使 Java文件使用UTF-8编码.然而,Eclipse工作空间(workspace)的缺 ...

  2. ZOJ 2283 Challenge of Wisdom

    题意:在一个n * m的地图里,有p个宝藏,每次只能向横纵坐标增加的方向走,问最少走几次能把宝藏都拿走. 解法:按横坐标排序,纵坐标的一个不下降子序列就是一条合法路径,要求多少条不下降子序列可以覆盖所 ...

  3. HIbernate学习笔记(八) hibernate缓存机制

    hibernate缓存 一. Session级缓存(一级缓存) 一级缓存很短和session的生命周期一致,因此也叫session级缓存或事务级缓存 hibernate一级缓存 那些方法支持一级缓存: ...

  4. php 仿百度文库

    http://www.haosblog.com/?mod=article_read&id=386

  5. algorithm@ O(3/2 n) time to findmaximum and minimum in a array

    public static int[] max_min(int[] a){ //res[0] records the minimum value while res[1] records the ma ...

  6. POJ1503: Integer Inquiry(连续多个大整数加法运算)

    #include<iostream> #include<cstring> using namespace std; string sum; ; string tool(stri ...

  7. 怎么创建MongoDB数据库

    MongoDB didn’t provides any command to create “database“. Actually, you don’t need to create it manu ...

  8. Android之指南针(电子罗盘)学习

    点我下载源码 5月12日更新到V5版:http://download.csdn.net/detail/weidi1989/5364243 今天,在小米的开源项目中下载了一个指南针源码学习了一下,感觉不 ...

  9. 垃圾回收(GC)的三种基本方式

    垃圾(Garbage)就是程序需要回收的对象,如果一个对象不在被直接或间接地引用,那么这个对象就成为了「垃圾」,它占用的内存需要及时地释放,否则就会引起「内存泄露」.有些语言需要程序员来手动释放内存( ...

  10. IAR stm8带库的工程模板

    下载:http://pan.baidu.com/share/link?shareid=2243555626&uk=2483252218