首先:完整形式是#ifndef LINE_H
#define LINE_H
。。。//头文件内容
#endif
'point' : 'class' type redefinition表明在程序里面发生了重复定义,在C++当中,声明可以有重复,但定义却只能有一次。比如像函数的声明与定义。
你说可以用#ifndef LINE_H
#define LINE_H可以来解决这个问题。说明在程序中是由于头文件的重复包含导致的重复定义。
#ifndef LINE_H
#define LINE_H是用来防止头文件重复包含的。你可以从字面意思上看出:中文解释大概是:如果没有定义LINE,那么就定义LINE以及后面的内容
所以,在一个CPP文件中,调用头文件时,头文件中先判断是否定义了LINE,如果没有,就定义头文件,如果定义了,则直接跳到#endif,这就防止了头文件的重复定义。
希望对你有所帮助!