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 *) '