你发现没有每个头文件的开头都用 #ifndef XXX #define XXX...#endif ,这是给头文件做个标记(mark),当编译器编译到这里时就会记住这个标记,当再次编译到这里时,看到这个标记就直接跳过下面的东西了,可以避免重复定义。
用宏定义 #ifndef #define...#endif 这就是专门用来解决头文件重复包含的
用宏来控制 判断是否重复定义头文件了 #ifndef #define Student.h.#endif类似处理