返回带有另一个类的数据成员的构造函数?遇到转换错误?



我们得到了一个驱动程序文件和输入文件。我们的任务是创建一个头文件和源文件,我在下面创建并添加了这些文件。

我遇到的问题是我们被要求返回一个PassageToken但编译器要求首先转换它,因为我不知道返回类型是什么。我相信我可能需要使操作员超载?

错误: 无法将 'PassageToken(std::__cxx11::basic_string(((StoryTokenizer*(this(->StoryTokenizer::nameP(, std::__cxx11::basic_string(((StoryTokenizer*(this(->StoryTokenizer::textP(, std::__cxx11::basic_string((StoryTokenizer*(this(->StoryTokenizer::p assnumP((' 从 'PassageToken' 转换为 'StoryTokenizer' 返回 PassageToken(nameP, textP, passnumP(;

错误:从"StoryTokenizer"转换为非标量类型"PassageToken"

有时我们会犯一些小错误,而这些错误会被忽略并花费数小时进行调试。这里的问题是在声明之前请求PassageToken类型。简单的解决方案是将PassageToken类放在StoryTokenizer类之前,以便它可以将其识别为类型。

最新更新