请教C++ 头文件中 预定义指令 几种差别

sunshinezu 2011-09-16 05:22:09
各位您好:
我在学习C++ 遇到有头文件的编写时,为了避免重复
# ifndef PromptModuleH
# define PromptModuleH

namespace SAMSPrompt
{
void PauseForUserAcknowledgement(void);
}
# endif

有时候,开头有# ifndef PromptModuleH ,# ifndef PromptModule,# ifndef PromptModule_H
运行的时候都可以 请问这三种有差别。

...全文
82 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
pupa 2011-09-17
  • 打赏
  • 举报
回复
受教。一直以为有固定写法,原来挺自由的…
leer168 2011-09-16
  • 打赏
  • 举报
回复
一种预防多次包含头文件的手段,约定成俗的写法而已
李迟 2011-09-16
  • 打赏
  • 举报
回复
我的命名方法是:
_FOO_H
或者
FOO_H
都是大写的。
sunshinezu 2011-09-16
  • 打赏
  • 举报
回复
谢谢 各位的指点
自由建客 2011-09-16
  • 打赏
  • 举报
回复
没区别,不过应当避免 PromptModule 之类,因为你这毕竟只是为了避免重复包含, PromptModule_H_ 比较妥当
cppresearcher 2011-09-16
  • 打赏
  • 举报
回复
没有区别,就是名称不同而已。
就想叫yoko 2011-09-16
  • 打赏
  • 举报
回复
确保唯一就可以了
limang89 2011-09-16
  • 打赏
  • 举报
回复

这个是自己定义的 当然是随便写了
君恪 2011-09-16
  • 打赏
  • 举报
回复
没有什么区别,但是你的工程最好保持一种命名规范。
当你多次#include头文件时,这些指令就能防止头文件中定义的重复。
pjl1119 2011-09-16
  • 打赏
  • 举报
回复
避免重复,用#pragma once就行了
turing-complete 2011-09-16
  • 打赏
  • 举报
回复
运行的时候,都没有这些鸟玩意 ,给编译器的爹用的

64,682

社区成员

发帖
与我相关
我的任务
社区描述
C++ 语言相关问题讨论,技术干货分享,前沿动态等
c++ 技术论坛(原bbs)
社区管理员
  • C++ 语言社区
  • encoderlee
  • paschen
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
  1. 请不要发布与C++技术无关的贴子
  2. 请不要发布与技术无关的招聘、广告的帖子
  3. 请尽可能的描述清楚你的问题,如果涉及到代码请尽可能的格式化一下

试试用AI创作助手写篇文章吧