Chinaunix

标题: 问一个弱智的问题,却困扰了很久的问题 [打印本页]

作者: dangyadang    时间: 2006-10-23 10:54
标题: 问一个弱智的问题,却困扰了很久的问题
如下  文件名为 extra.h
#ifndef __EXTRA_H__
#define __EXTRA_H__
这个是文件头部分的内容,再看另一个
文件名为 mycode.h
#ifdef __MY_CODE_H__
#define __MY_CODE_H__
当然我知道第二个是笔误,但是,是否名称不需要完全一样,另外,这里用的都是__,而不是_,有没有什么严格的约定啊?
作者: lenovo    时间: 2006-10-23 11:03
对,那只是一个宏,为了防止重复包含的,
你叫什么都可以。
用__也是为了防止和别的符号发生冲突。
没有什么规定,你可以认为是一种惯例。
作者: dangyadang    时间: 2006-10-23 11:08
"__*****__"内部的名称既然不需要严格,那怎么避免重复包含呢?
作者: chzht001    时间: 2006-10-23 11:09
标题: 回复 1楼 dangyadang 的帖子
随你定义,只要ifndef 和define一样就OK
作者: dangyadang    时间: 2006-10-23 12:15
o ,我想我理解了,呵呵,只要不同的文件使用的不同即可,只要标识了自己就行,对么?
作者: chzht001    时间: 2006-10-23 12:57
原帖由 dangyadang 于 2006-10-23 12:15 发表
o ,我想我理解了,呵呵,只要不同的文件使用的不同即可,只要标识了自己就行,对么?


你还蛮聪明的呀
作者: prc    时间: 2006-10-23 14:54
uuid -r 产生一个字符串,估计这辈子也不会重复
作者: weigern    时间: 2006-10-24 03:19
避免重复包含的问题你只要自己看一下如果有程序代码这么写,预编译出来是什么样子,应该就能清楚了
#include <extra.h>
#include <extra.h>

展开就是
#ifndef __EXTRA_H__
#define __EXTRA_H__
...
#endif

#ifndef __EXTRA_H__
#define __EXTRA_H__
...
#endif




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2