今天采用C++分离式编译时出现了一个奇奇怪怪的错误,看了源码没有发现语法错误,详情如下:
总体来看,没有什么问题,编译出现了错误:
上面提示的未声明的标识符其实文本中都有,后来发现是由于GetText.h文件没有使用命名空间的原因
using namespace std;
故将cpp中的命名空间声明在#include"GetText.h"之前即可,如下图,问题解决:
总结:编译出现奇奇怪怪的错误,首先要考虑是不是结构的问题,或者破坏了什么结构导致。比如之前有一次在if判断中加入了"int ii >2020/3/4"这种操作,导致错误定位不到真正错误的地方