我正在尝试使用 Qt
中的 QVector
类来工作(对我来说:P)。我想要做的是将对象 Question
的多个实例放入 QVector
中。
我去过多个论坛,但对于我来说,它们都太复杂了,因为我是初学者。 这个one post was perfect但我没有找到解决问题的方法。
所以我向你寻求帮助!
这是我想要工作的功能:
创建束/vector 的部分
/**
* @brief MenuQuestionnary::assembleQuiz
* Assemble the bundle of question that will be used in Quiz class
*/
void MenuQuestionnary::assembleQuiz(){
QVector<Question> vectorQuiz;
vectorQuiz.reserve(spinBoxNumberOfQuestion->value());
for(int i = 0; i <= spinBoxNumberOfQuestion->value(); i++){
vectorQuiz.append(Question((qrand()% maximumNumberOfQuestionAvailable)));
}
}
这是我的问题构造函数:
Question::Question(int id)
{
this->questionId = id;
//TODO: Actually get it from DB
this->questionText = "2+2?";
this->explanation = "Addition mechanics";
this->creatorId = 1;
}
我期望在这里做的是将Question
对象的选定数字放入 vector
中。之后我可以将其传递给另一个类(class)。从那里我应该能够从中提取文本(questionText
和 questionExplanation
)。
最佳答案
您正在尝试推送类类型 Question
的对象进入QVector<int>
,显然期待 int
反而。您应该将其更改为 QVector<Question>
首先。
不过,我强烈建议您阅读 a good book在继续深入之前先了解一下 C++,否则你的体验会变得越来越复杂。
从互联网上的论坛复制粘贴代码不是编程,很快就会给您带来麻烦。
关于c++ - 如何将 QVector 与多个对象一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21511073/