ACE杂记——ACE_RCSID(path,file,id)
来源:互联网 发布:北京智赢国际英语知乎 编辑:程序博客网 时间:2024/05/07 08:57
看ACE自带的例子时发现好多例子的开头都有ACE_RCSID这个函数,不知道是干什么的,网上也搜不到,后来在源代码中找到了 如下注释:
根据程序和英文注释,他的用处是根据你输入的三个参数生成一个唯一的ID。他的作用有三点(翻译的不是很准确,原文是上面的蓝字):1。避免外部引用冲突;2。为每个文件起一个独一无二的名字;3。避免编译器保“ariable declared and never used"的警告 。
#if (defined (ACE_USE_RCSID) && (ACE_USE_RCSID != 0))
# if ! defined (ACE_RCSID)
// This hack has the following purposes:
// 1. To define the RCS id string variable as a static char*, so
// that there won't be any duplicate extern symbols at link
// time.
// 2. To have a RCS id string variable with a unique name for each
// file.
// 3. To avoid warnings of the type "variable declared and never
// used".
# define ACE_RCSID(path, file, id) /
static inline const char* get_rcsid_ ## path ## _ ## file (const char*) /
{ /
return id ; /
} /
static const char* rcsid_ ## path ## _ ## file = /
get_rcsid_ ## path ## _ ## file ( rcsid_ ## path ## _ ## file ) ;
# endif /* #if ! defined (ACE_RCSID) */
#else
// RCS id strings are not wanted.
# if defined (ACE_RCSID)
# undef ACE_RCSID
# endif /* #if defined (ACE_RCSID) */
# define ACE_RCSID(path, file, id) /* noop */
#endif /* #if (defined (ACE_USE_RCSID) && (ACE_USE_RCSID != 0)) */
# if ! defined (ACE_RCSID)
// This hack has the following purposes:
// 1. To define the RCS id string variable as a static char*, so
// that there won't be any duplicate extern symbols at link
// time.
// 2. To have a RCS id string variable with a unique name for each
// file.
// 3. To avoid warnings of the type "variable declared and never
// used".
# define ACE_RCSID(path, file, id) /
static inline const char* get_rcsid_ ## path ## _ ## file (const char*) /
{ /
return id ; /
} /
static const char* rcsid_ ## path ## _ ## file = /
get_rcsid_ ## path ## _ ## file ( rcsid_ ## path ## _ ## file ) ;
# endif /* #if ! defined (ACE_RCSID) */
#else
// RCS id strings are not wanted.
# if defined (ACE_RCSID)
# undef ACE_RCSID
# endif /* #if defined (ACE_RCSID) */
# define ACE_RCSID(path, file, id) /* noop */
#endif /* #if (defined (ACE_USE_RCSID) && (ACE_USE_RCSID != 0)) */
- ACE杂记——ACE_RCSID(path,file,id)
- ACE杂记——ACE_RCSID(path,file,id)
- LeetCode—388. Longest Absolute File Path
- LeetCode—388. Longest Absolute File Path
- c#基础入门(4)——File、Directory、Path
- Java NIO —— 用 Path 取代 File
- 【C#基础知识】——File(文件操作)Path类
- ospf6d.conf — Open Shortest Path First daemon configuration file
- Python —— 杂记
- Qt—细节杂记
- Java—杂记
- 基于ACE应用编程框架——线程池 - [ACE]
- Bootstrap—后台框架Ace
- C#基础(19)——path、File类的基本操作
- PowerManager File path
- android file path 问题
- Poco::Path & Poco::File
- Path File URI
- Lotus Notes and Domino入门讲座(二)-Domains, Servers, Databases, Directories…的释义
- JDK6笔记(2)----操作XML文件
- 找回任务栏上的输入法图标
- 方向键不能控制选择单元格
- 我的股票:2007/03/14
- ACE杂记——ACE_RCSID(path,file,id)
- Java精华积累:每个初学者都应该搞懂的问题!
- ASCII码对照表
- 计划中(1)--自我分析
- Weblogic8.1 启动缓慢原因分析
- 浅谈程序员的数学修养
- 网管必须熟悉的几个网络DOS命令
- Virtual PC 中安 装ms dos 6.22
- 最优逼近算法-用SP实现