• 一个小程序猿思考之路-头文件中#ifndef/#define/#endif作用和用法


    编写自定义头文件时,原来就是随意的编写一些内容,但是很少去想过头文件的格式;

    突然一天,发现自己的头文件里有这么几个小东西 ;

    #ifndef DAO_H
    #define DAO_H

    ...

    #endif

    上面这个有什么详细的意义?

    恍惚的记着是为了避免头文件多次调用,造成多次编译,引起重定义的错误;

    然后找了下

    #ifndef _TEST_H
    #define _TEST_H//一般是文件名的大写
    头文件结尾写上一行:#endif

    这样一个工程文件里同时包含两个test.h时,就不会出现重定义的错误了。

     

    分析:当第一次包含test.h时,由于没有定义_TEST_H,条件为真,这样就会包含(执行)#ifndef _TEST_H和#endif之间的代码,当第二次包含test.h时前面一次已经定义了_TEST_H,条件为假,#ifndef _TEST_H和#endif之间的代码也就不会再次被包含,这样就避免了重定义了。主要用于防止重复定义宏和重复包含头文件

  • 相关阅读:
    P1443 马的遍历
    P1747 好奇怪的游戏
    蜀绣
    Five hundred miles
    如果没有你
    Yellow
    流星

    深入理解计算机中的 csapp,h和csapp.c
    可迭代的集合类型使用foreach语句
  • 原文地址:https://www.cnblogs.com/aiyq195/p/6391259.html
Copyright © 2020-2023  润新知