Visual Studio一直在为编译器提供奇怪的构建错误"我正在上课。它告诉我.cpp函数"不是它[标题中的母函数]的成员," "未知的覆盖说明符"对于声明的标题函数,说某些函数不会采用[这个]数量的参数......等等。奇怪的是,虽然它指向某些行,但任何地方都没有错误标记。没有任何颜色的波浪线。无论UI如何,语法似乎都是正确的。所有错误都是构建错误 - 没有任何来自Intellisense。
我唯一的猜测可能是#include或继承问题,所以我给了我的代码组织给你一个想法(显示代码本身没用,因为UI没有语法错误)。
如果它意味着什么,我已经在Linux和Windows之间传输了文本文件(我目前正在使用它)。作为参考,我已经尝试清除项目缓存,重建和重新启动项目,甚至复制到新项目而不会更改错误。这是今年VS2017的最新更新。关于包含的东西是我的猜测,但如果没有,VS似乎是罪魁祸首。但请告诉我可能性。
main.cpp中:
//#pragma once
#include "DatalogProgram.h"
#include "Scanner.h"
#include <iostream>
using namespace std;
int main() {
string filepath = "";
Scanner sc;
DatalogProgram parser;
system("pause");
return 0;
}
Scanner.h:
#pragma once
#include "Token.h"
#include <fstream>
#include <vector>
class Scanner {};
DatalogProgram.h:
#pragma once
#include "Scanner.h"
class DatalogProgram {};
Token.h:
#pragma once
#include <string>
enum Toktype {};
class Token {};
答案 0 :(得分:0)
发现问题 - 是的,它出现在我的代码中。我没有在字符串和fstream引用之前执行“std ::”,这引发了所有“无法识别”的问题。一旦我这样做并重新排列了#include链,它就完美无缺。如果我展示了一些代码,你们可能会更快地抓住它。