Bonsoir,

Voila j'ai un petit soucis, car dans un programme, j'utilise une classe de ma conception nommée Tab2D qui est en faite une classe servant à gérer un arrangement à deux dimensions d'autres objets.

Or j'essaie ici de l'utiliser pour contenir des objets Cellule héritant directement de QWidget, mais j'ai un soucis sur une methode d'initialisation:

En effet cette methode a pour but de remplir de tableau avec des Cellule, qui, comme elles sont des Widget, ont besoin d'un Widget parent (la classe ou est créée la Tab2D), or j'ai une erreur assez ennuyeuse lors de la compilations:
(voici des bouts de code si ça peut aider, s'il en faut plus, dites le )

dans la classe Ecran (dans le constructeur)(qui hérite elle aussi de QWidget):
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
 
tableau = new Tab2D<Cellule>(i);
tableau->initialiser(this);
ma methode de la classe Tab2D:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
template <class T> void Tab2D<T>::initialiser(QWidget* param)
{
 for(unsigned int i=0; i<largeur*hauteur; i++) tab[i] = new T(param);
}
Or j'obtiens un gentil:

../../../Qt/4.3.4/include/QtGui/../../src/gui/kernel/qwidget.h In member function `Cellule&Cellule::operator=(const Cellule&)':
tab2D.hh:83: instanciated form `void Tab2D<T>::initialiser(QWidget*) [with T = Cellule]'
ecran.cc:11: instanciated from here
../../../Qt/4.3.4/include/QtGui/../../src/gui/kernel/qwidget.h:728: error: {QWidget& QWidget::operator=(const QWidget&)' is private
tab2D.hh:61: error: within this context