Tecnica consigliata per esporre a video i dati di una matrice presente in un'altra classe
-
Buonasera. Rieccomi con un altro problema.
Ho una classe che definisce una matrice di interi. All'interno della classe ho realizzato i metodi per assegnare i valori ai vari elementi della matrice. Poi alcuni dati di questa matrice devono essere esposti a video. Ho quindi un'altra classe tipo form con i campi che dovrebbero acquisire i giusti valori della matrice. Ho usato la tecnica di valorizzare i campi ui col riferimento all'istanza della classe matrice. Evidentemente questa tecnica non è corretta, dato che ho appurato che nella matrice i valori vengono calcolati correttamenti, ma a video riporta dati sballati. Quale tecnica si dovrebbe utilizzare per acquisire valori presenti su un'altra classe ? -
@bvox123 said in Tecnica consigliata per esporre a video i dati di una matrice presente in un'altra classe:
Ho una classe che definisce una matrice di interi
Hai bisongo di copy-constructor (
MiaClasse(const MiaClasse& other);
) e/o assignment operator (MiaClasse& operator=(const MiaClasse& other);
) per questa classe? -
-
@bvox123 said in Tecnica consigliata per esporre a video i dati di una matrice presente in un'altra classe:
QObject si crea una sorta di collegamento fra le due classi ? E' Così che bisogna operare ?
QObject permette di emettere segnali e puoi usarli per fare property binding:
class ClassA : public QObject{ Q_OBJECT Q_PROPERTY(int value READ value WRITE setValue NOTIFY valueChanged) Q_DISABLE_COPY(ClassA) public: ClassA(QObject* parent=Q_NULLPTR) : QObject(parent), m_value(0){} int value() const {return m_value;} void setValue(int val){ if(m_value==val) return; m_value = val; emit valueChanged(m_value); } Q_SIGNAL void valueChanged(int); private: int m_value; }
ora puoi connettere uno slot a
valueChanged
per aggiornare la GUI o usarlo direttamente in QML come una proprieta' (se usi QtQuick)