J'ai une classe ClientWindow. J'ai créé plusieurs instances et ajouté leurs pointeurs à une liste. Si j'essaie de montrer l'une des fenêtres, cependant, je reçois "Erreur de segmentation (core dumped)" Je garde la liste des fenêtres dans une classe appelée contrôleur.Qt Erreur de segmentation d'erreur lors de la tentative d'affichage de la fenêtre
Voici mon fichier d'en-tête du contrôleur:
#ifndef CONTROLLER_H
#define CONTROLLER_H
#include "clientwindow.h"
class Controller
{
public:
Controller();
void createClients(int num);
void showWindows();
private:
QList<ClientWindow*> clWList;
int size;
};
#endif // CONTROLLER_H
c'est le fichier cpp:
#include "controller.h"
Controller::Controller()
{
}
void Controller::createClients(int num)
{
size = num;
for(int i = 0; i < size; i++)
{
ClientWindow cw;
clWList.append(&cw);
}
}
void Controller::showWindows()
{
for(int i = 0; i < size; i++)
{
ClientWindow* cw = clWList.at(0);
cw->show();
}
}
c'est mon principal:
#include <QtGui/QApplication>
#include "clientwindow.h"
#include "controller.h"
int main(int argc, char *argv[])
{
QApplication a(argc, argv);
// ClientWindow w;
// w.show();
QString temp = argv[1];
bool ok;
int tempI = temp.toInt(&ok, 10);
Controller c;
c.createClients(tempI);
c.showWindows();
return a.exec();
}
Cela a fonctionné! Merci. – Amre