0

C++ を使用して Eclipse で Qt プログラムを作成しようとしていますが、エラーを回避できません。

void MyTests::populateFirstList(){
    Question* q = new Question;
    q = this->ctr->getCurrent();
    string s = this->ctr->toString(q);
}

質問は私が定義した型であり、toString(q) の行は無効な引数を示すエラーを返します。関数 toString():

string Controller::toString(Question* q){
    string s="";
    string text = q->getText();
    char c;
    string::iterator it;
    for (it= text.begin(); it != text.end(); it++)
    {
        if ((*it) == ' ') {
            s+="\n";
        }
        else {
            s+=it;
        }
    }
    return s;
}

念のため、関数 getCurrent():

Question* Controller::getCurrent(){
    return this->question;
}

関数 toString() は質問へのポインターを受け取る必要があり、q は 1 つであるため、なぜこれが発生するのかわかりません。エラーがこれらの関数内で発生したのか、それともより深い場所で発生したのかさえわかりません。助けてくれてありがとう。

エラーメッセージは次のとおりです。

invalid arguments ' Candidates are:
    std::basic_string < char,std::char_traits < char >, std::allocator < char > >
      toString(Question *) '
4

2 に答える 2