1、确认应用的文件是否有编译,测试方法修改错文件中的内容再次编译看是否报错
2、如果没有说明没有参与编译,需要修改makefile文件添加编译对应文件生成.o目标文件。
3、如果发现已经添加了该文件,还有一种可能就是宏命名冲突。例如:
#ifndef _MONITOR_H_
#define _MONITOR_H_
class Monitor
{
public:
static Monitor* GetInstance();
int32_t Subscribe();
private:
Monitor();
private:
uint32_t m_State;
Monitor* mInstance;
};
#endif
这个文件没有参与编译,发现Monitor被系统中的另一文件占用,改名后OK,编译通过。