27/11/19 11:07
Thejuster
Buongiorno.
Ho un problema nell'assegnare un valore da una classe.
in pratica, ClasseA chiama un metodo in ClasseB dove invia se stessa come argomento.
di seguito in classeA devo assegnare un valore nella classeB contenuta nell'argomento.
uso Qt.
Ho provato diverse soluzioni dichiarando direttamente nel file di intestazione NomeClasse *oggetto;
Ma ho errori sempre diversi tentando di risolvere il problema
la soluzione che ora sto tentando di completare è questa.
dichiaro nella classe CardItem
Anche se è sbagliato, è ciò che vorrei fare
magari mostrando cosa voglio fare da codice (anche sbagliato) si capisce meglio.
Classe MainWindow
Come posso risolvere?
Mi serve inviare a quella classe da un void il MainWindow stesso per poter modificare alcuni parametri.
Se provo a fare nella classe CardItem
MainWindow *t = new MainWindow;
mi dice is not a name type.
ho tentato anche con un cast di conversione ma ho lo stesso errore
consigli?
Ho un problema nell'assegnare un valore da una classe.
in pratica, ClasseA chiama un metodo in ClasseB dove invia se stessa come argomento.
di seguito in classeA devo assegnare un valore nella classeB contenuta nell'argomento.
uso Qt.
Ho provato diverse soluzioni dichiarando direttamente nel file di intestazione NomeClasse *oggetto;
Ma ho errori sempre diversi tentando di risolvere il problema
la soluzione che ora sto tentando di completare è questa.
dichiaro nella classe CardItem
Anche se è sbagliato, è ciò che vorrei fare
magari mostrando cosa voglio fare da codice (anche sbagliato) si capisce meglio.
Classe MainWindow
//MainWindow.h public: int numero = 0; //MainWindow.cpp void MainWindow::Test() { CardItem *item = new CardItem; item->prova(this); //error: no matching function for call to 'CardItem::Prova(MainWindow* const)' }
//CardItem.h #include "mainwindow.h" public: void Prova(MainWindow *parent); //error: 'MainWindow' has not been declared //CardItem.cpp void CardItem::Prova(MainWindow *parent) { parent->numero = 5; }
Come posso risolvere?
Mi serve inviare a quella classe da un void il MainWindow stesso per poter modificare alcuni parametri.
Se provo a fare nella classe CardItem
MainWindow *t = new MainWindow;
mi dice is not a name type.
ho tentato anche con un cast di conversione ma ho lo stesso errore
consigli?
Ultima modifica effettuata da Thejuster 27/11/19 11:11
mire.forumfree.it/ - Mire Engine
C# UI Designer
C# UI Designer