Мой QList содержит указатели на класс. Я пытаюсь перебрать QList, но кажется, что все его элементы содержат только последний указатель, который я назначил QList.
код:
QList<fooClass*> myList;
fooClass *pNewFooA = new fooClass("Bob");
myList.append(pNewFooA);
fooClass *pNewFooB = new fooClass("Jen");
myList.append(pNewFooB);
fooClass *pNewFooC = new fooClass("Mel");
myList.append(pNewFooC);
QList<fooClass*>::iterator i;
for (i = myList.begin(); i != myList.end(); i++) {
cout << (*i)->getName() << "\n";
}
выход:
Mel
Mel
Mel
Вместо использования .append () я также попробовал следующее, но оно не сработало:
- myList.push_back ( "Zoe");
- myList << "zoe"; </li>
- myList + = "zoe";
fooClass.cpp
QString name = "";
QString fooClass::getName()
{
return name;
}
fooClass::fooClass(QString newName)
{
name = newName;
}