h文件中新定义的结构体,不断地出现struct重定义错误,修改了变量名仍旧是这个错误
在网上找了很多方法,删除之前的编译文件重新编译,该边变量名等,都没有效果
最后在定义所在的头文件的开始出增加语句 #pragma once 成功解决上面的重定义问题;
该错误的原因是重复同一文件被include多次,解决方法有两种
一种是#ifndef方式,
#ifndef SOME_UNIQUE_NAME_HERE
#define SOME_UNIQUE_NAME_HERE
// contents of the header
...
#endif // SOME_UNIQUE_NAME_HERE
一种是就是本文采用的方法:#pragma once方式(在头文件的最开始加入)。
#pragma once
// contents of the header
...