Вариантов несколько:
1.
В конструкторе MyWidget добавить указатели на MainWindow::M и MainWindow::MyArray
class MyWidget : public QWidget {
Q_OBJECT
public:
....
MyWidget (int *pM, QPointF *pMyArray, QWidget *parent = 0)
: QQWidget(parent), m_pM(pM), m_pMyArray(pMyArray){
}
....
private:
int *m_pM;
QPointF *m_pMyArray;
//
int getM() const { return *m_pM; } // <== вот тут мы получаем значение m
но это кривое решение.
2.
1)В MyWidget сделать
сигнал типа:
слот типа:
public slots:
void slotGetM(int m) { //тут используем значение переменной m }
2). В MainWindow сделать:
сингал типа:
слот типа:
public slots:
void slotGetM() { emit signalGetM(this->M); }
3. В конструкторе MainWindow (или где нить еще) коннектим:
connect(MyWidget, SIGNAL(signalGetM()), this, SLOT(slotGetM()));
connect(this, SIGNAL(signalGetM(int)), MyWidget, SLOT(slotGetM(int)));
4. Для того чтобы в MyWidget получить данные от MainWindow , мы в каком либо методе MyWidget делаем:
и, следовательно после отправки этого сигнала мы в слот void MyWidget::slotGetM(int m) получим значение m и можем делать с ним что нам нужно.
т.е. обмен типа такой:
1. MyWidget говорит MainWindow-у : а дай ка мне значение M
2. MainWindow отвечает MyWidget-у : а на-ка тебе значение M
---
Можно придумать и еще шо нить..