我认为它与#includes有关,但这是我第一次尝试使用它们,所以我有点迷失。我只是想知道是否有人能够立即判断是否有明显的错误。
/** @file Translator.cpp */
#include <fstream>
#include "Translator.h"
#include <vector>
Translator(std::ifstream& fin) //error appears on this line
{
T1(fin);
T1.createTable(fin);
T2(fin);
T2.createTable(fin));
string temp;
while(!fin.eof())
{
fin >> temp;
message.push_back(temp);
}
}
感谢您的时间。
答案 0 :(得分:6)
很难在没有看到标题的情况下完全回答这个问题,但如果这是一个函数,则需要在函数定义中添加void
的返回类型:
void Translator(std::ifstream& fin) {
...
}
如果这是构造函数,则需要提供其限定名称:
Translator::Translator(std::ifstream& fin) {
...
}
答案 1 :(得分:1)
如果没有Translator
的声明,说起来有点难,但如果它是一个构造函数,那么它应该是Translator::Translator(std::ifstream& fin)
。如果它是一个方法,那么它应该指定一个返回类型,所以类似void Translator(std::ifstream& fin)
。