错误:
所有这些错误都可以在这一行找到:
//ClassPractice.cpp
void tellStats(pick);
调用...
//Functions.h
void tellStats(string);
定义为......
//Functions.cpp
void tellStats(string choice)
{
if (choice == "wizard")
{
cout << "These are the Wizard's stats:" << endl;
cout << "Max HP: 80\nSpeed: 7\nAttack: 10" << endl;
}
}
我不明白为什么我会收到这些错误。我不知道为什么int甚至涉及错误。在这些代码部分中,我没有看到任何涉及int的内容。我以为我正确使用'void',因为我不想用函数返回值。
答案 0 :(得分:6)
你不要用返回类型调用函数。不要说:
void tellStats(pick);
只需使用tellStats(pick);
即可。
那条线是你调用tellStats的唯一地方吗?
答案 1 :(得分:3)
int
是一只红鲱鱼。由于历史原因,编制者内部通常会在int
错过某种类型时替换tellStats
。这通常不应该发生,但是在这里你看到这个暴露,因为编译器试图在第一个错误后继续。编译器错误地猜测您要定义类型为 void int
的变量{{1}}并使用字符串初始化该变量。