#ifndef XXXX_H
#define XXXX_H
......
#endif
以上代码是一个宏,俗称保护头,作用:防止头文件的重复包含。
每一个.h头文件定义时,都应该加上这么一个宏,来防止文件的重复包含。
举例:
写application.h头文件的时候,加上#ifndef ......:
#ifndef APPLICATION_H
#define APPLICATION_H
#include "ns3/ptr.h"
#include "ns3/node.h"
#... ...
...
#endif
写application.cc文件时:
#include "application.h"
#include "ns3/ptr.h"
#... ...
......
这样因为application.h里面包含了ns3/ptr.h,ns3/ptr.h也加了保护头,所以当application.cc文件再次包含ns3/ptr.h的时候,就#ifndef不成立了,不执行define后面的内容了,这样就防止了重复包含。