澳门新浦京8455com就非常的小概退出了,成功后就能够编译了

新建一个对话框工程,编译后直接F5调试模式运行。结果无法退出了!!!卡在最后退出不了。这是怎么回事?头一次遇到。#pragmacomment(lib,”.\Debug\log4cplusUD.lib”)就是使用这个log日志记录类的一个demo工程。最新版的log4cplus-2.0.4,UNICODEdebug编译的lib、dll拷贝到我的demo工程的Debug输出目录。然后我在stdafx.h加载了一下这个lib文件,就无法退出了。什么代码都没有做。。。这是啥情况啊?有使用这个类库的朋友么?

作者:高张远瞩(HiLoveS)

博客:

转载请保留该信息

 

Google Glog 是一个C++语言的应用级日志记录框架,提供了 C++
风格的流操作和各种助手宏。试用了一下,感觉不错,试用过程出了不少插曲。

1、开源项目首页已经从

2、下载代码后,双击根目录下的google-glog.sln,Visual Studio
2015提示先进行迁移,成功后就可以编译了。

3、在解决方案下有四个工程:libglog(是动态链接库工程,生成libglog.dll和libglog.lib),libglog_static(是静态库工程,生成libglog_static.lib,运行时不需要libglog.dll),logging_unittest和logging_unittest_static是相应的测试工程。

4、不需要更改工程属性。平台工具集是否是Windows
XP(v140_xp)好像并不影响。Glog不支持Unicode宽字符集,工程属性字符集保持多字节字符集。“C/C++”-“代码生成”中的“运行库”,libglog动态库工程必须选择“多线程DLL”或“多线程调试DLL”,libglog_static静态库工程必须选择“多线程”或“多线程调试”。

5、按需要编译库。以静态库为例,动态库多一步将libglog.dll拷贝到程序目录下。分别编译Debug和Release,将Debug版的重命名为libglog_static_d.lib。将编译的lib文件拷贝到根目录srcglog下,srcglog是头文件目录。这个版本的静态库在试用时并未发现有内存泄露问题。

6、将glog目录(包括了头文件和库文件)拷贝到自己的工程目录下。也可以新建另外的库目录,也可以在工程属性的附加目录中增加相应目录,这里采用在代码文件中控制。在工程资源管理器中添加glog头文件,如果先添加glog目录再添加头文件会提示glog头文件中的#include路径出错,手动删除路径中的“glog”可解决。

7、在需要的地方#include “glog/logging.h”。建议添加到stdafx.h中。 

8、使用静态库必须添加#define GOOGLE_GLOG_DLL_DECL。动态库不必添加。

9、因windows.h中定义的宏ERROR,与glog中定义的宏ERROR冲突,所以如果#include
<windows.h>后要添加#define
GLOG_NO_ABBREVIATED_SEVERITIES,并且代码中要用google::GLOG_ERROR来代替原来的google::ERROR,相应的其他也改为:GLOG_INFO、GLOG_WARNING、GLOG_FATAL。

10、添加库文件:#pragma
comment(lib,”glog/libglog_static.lib”)。针对Debug和Release版,用#ifdef控制。

1 #define GOOGLE_GLOG_DLL_DECL
2 #define GLOG_NO_ABBREVIATED_SEVERITIES
3 #include "glog/logging.h"
4 
5 #ifdef DEBUG
6     #pragma comment(lib,"glog/libglog_static_d.lib")
7 #else
8     #pragma comment(lib,"glog/libglog_static.lib")
9 #endif // DEBUG

11、自己的工程使用静态库时,必须选择“多线程”或“多线程调试”。使用动态库则选择“多线程DLL”或“多线程调试DLL”。

12、使用glog之前必须先初始化库,要生成日志文件只需在开始log之前调用一次:

You can leave a response, or trackback from your own site.

Leave a Reply

网站地图xml地图