预处理器的行为就是由预处理指令(由#字符开头的一些命令)控制的。即#define和#include#define指令定义了一个宏——用来代表其它东西的一个名字,如常量或常用的表达式。#include指令告诉预处理器打开一个特定的文件,将它的内容作为正在编译的文件的一部分“包含”进来。C程..
分类:
其他好文 时间:
2015-08-17 19:54:11
阅读次数:
262
单例模式: 通过 local static 创建全局对象(非local static 可能带来的初始化问题)通过#ifdef, #ifndef, #if defined,等条件编译来选择其中一个实现(std::cerr, printf, file)通过环境变量来设置某些默认值if ( getenv( "ORO_LOGLEVEL" ) != 0 )
{...}使用嵌套类来管理内部实现 log lev...
分类:
其他好文 时间:
2015-08-17 17:21:07
阅读次数:
109
1 #ifdef Q_OS_WIN
const char * const eol = "\r\n";
#else
const char *eol = "\n";
#endif
分类:
其他好文 时间:
2015-08-17 15:45:56
阅读次数:
1361
1.包log.h#ifndef __MULTI_TRACE_H__#define __MULTI_TRACE_H__#ifdef ANDROID_NDK_BUILD#define LOG_TAG "NATIVE NDK INFO"#include // only use in NDK#define....
分类:
其他好文 时间:
2015-08-17 14:00:18
阅读次数:
113
关于extern_C 通常,在C语言的头文件中经常可以看到类似下面这种形式的代码:#ifdef __cplusplus extern "C" { #endif /**** some declaration or so *****/ #ifdef __cplusplus...
分类:
其他好文 时间:
2015-08-17 11:52:15
阅读次数:
131
一旦知道 TCHAR 和_T 是如何工作的,那么这个问题很简单。基本思想是 TCHAR 要么是char,要么是 wchar_t,这取决于_UNICODE 的值:// abridged from tchar.h #ifdef _UNICODE typedef wchar_t TCHAR; ...
分类:
编程语言 时间:
2015-08-17 11:22:39
阅读次数:
131
#pragma是一种预处理指令,作用是设定编译器的状态或者是指示编译器完成一些特定的动作。其格式一般为:#pragma Para。其中Para为参数。下面是一些常见用法。1、message——在编译信息输出窗口中输出相应信息。例:#ifdef _X86#pragma message("_X86 ma...
分类:
其他好文 时间:
2015-08-13 15:40:42
阅读次数:
104
1、ifdef
#ifdef XXXXX
......
#endif如果XXXXX被定义了,则编译上述代码。
2、ifndef
#ifndef XXXXX
......
#endif如果XXXXX没有被定义,则编译上述代码。
3、if
#if XXXXX
.....
#endif如果XXXXX被定义了,并且值为真,则编译上述代码。
4、if define
...
分类:
其他好文 时间:
2015-08-13 07:45:50
阅读次数:
165
是在features.h中用于特性控制的一个功能测试宏 /user/include/features.h /* If _GNU_SOURCE was defined by the user, turn on all the other features. */ #ifdef _GNU_SOURCE ...
分类:
其他好文 时间:
2015-08-12 06:41:49
阅读次数:
220
在pch中全局导入一些全局的头文件 #import?<Availability.h>
#ifndef?__IPHONE_5_0
#warning?"This?project?uses?features?only?available?in?iOS?SDK?5.0?and?later."
#endif
#ifdef?__OBJC__
#i...
分类:
其他好文 时间:
2015-08-11 08:38:42
阅读次数:
175