这里的顺序主要是为了宏定义的问题,例如:
//example.h
#ifndef _EXAMPLE_
#define _EXAMPLE_ 10
#endif
//example.cpp
#define _EXAMPLE_ 20
#include "example.h"
因为先编译example.cpp 所以_EXAMPLE_ 先被定义成20,然后展开example.h,因为_EXAMPLE_ 已经被定义,所以_EXAMPLE_ 不会被定义成10
这里的顺序主要是为了宏定义的问题,例如:
//example.h
#ifndef _EXAMPLE_
#define _EXAMPLE_ 10
#endif
//example.cpp
#define _EXAMPLE_ 20
#include "example.h"
因为先编译example.cpp 所以_EXAMPLE_ 先被定义成20,然后展开example.h,因为_EXAMPLE_ 已经被定义,所以_EXAMPLE_ 不会被定义成10