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,編譯通過。