- Vue 3 响应式对象:ref 和 reactive 的使用和区别
- 经典SQL语句大全之技巧篇
- SEO基础细节:nofollow的介绍与应用1
- ASP.NET对文件的操作,创建文件,判断文件是否存在,判断文件是否存在删除文件夹
- 影响搜索引擎排名、收录数量及速度的主要因素
- 内部链接优化是网站SEO的首要因素
- 什么是单工通信、半双工通信和全双工通信
- img图片下多余空白问题的解决方法
- 网站权重重量秘密之谈
- 搜索引擎robots协议怎么写利于seo优化?什么是网站robots呢?
邮箱:
手机:15383239821
#ifndef详解
#ifndef详解
#ifndef 是"if not defined"的简写,是预处理功能(宏定义、文件包含、条件编译)当中的条件编译,可以根据是否已经定义了一个变量来进行分支选择,其作用是:
1、防止头文件的重复包含和编译;
还是把头文件的内容都放在#ifndef和#endif中吧。不管你的头文件会不会被多个文件引用,你最好都加上这个。一般格式是这样的:
#ifndef <标识>
#define <标识>
......
......
#endif
<标识>在理论上来说是可以自由命名的,但每个头文件的这个“标识”都应该是唯一的。标识的明明规则一般是头文件名全大写,前面加下划线,并把文件名中的"."也变成下划线,如:stdio.h
#ifndef _STDIO_H
#define _STDIO_H
......
......
#endif
注意:#ifndef起到的效果是防止一个源文件多次包含同一个头文件,而不是防止两个源文件包含同一个头文件。事实上,防止同一头文件被两个不同的源文件包含这种要求本身就是不合理的,头文件存在的价值就是被不同的源文件包含。
2、便于程序的调试和移植;
1)
#ifndef 标识符
程序段 1
#else
程序段 2
#endif
它的作用是当“标识符”没有由#define定义过,则编译“程序段1”,否则编译“程序段2”。
2)
#ifndef 标识符
#define 标识符
程序段 1
#else
程序段 2
#endif
它的作用是当“标识符”没有由#define定义过,则编译“程序段1”,否则编译“程序段2”。
3)
#if 表达式
程序段 1
#else
程序段 2
#endif
它的作用是当“表达式”值为真时,编译“程序段1”,否则编译“程序段2”。
注:以上三种形式中#else不是强制的,可省略;当然,当#else后需要嵌套#if时,可以使用预处理命令#elif,它相当于#else#if。
小结:在程序中使用条件编译主要是为了方便程序的调试和移植。
- 上一篇:安装nodejs后配置好环境变量
- 下一篇:代码中 #ifdef注释方法的使用
-
2012-07-02如何做伪原创文章轻加工
-
2012-07-02网站权重重量秘密之谈
-
2013-04-23C#读取设置Cookie
-
2024-09-12当执行 import vue from 'vue' 时发生了什么?
-
2023-10-11php在变量(参数)前加&是什么意思?
-
2023-02-22如何做好落地页推广
