如何将指针从MainWindow传递到另一个类?我在MainWindow的构造函数中尝试这个,但是我有错误,它不起作用。还有其他选择吗? 主窗口* .cpp和* .h代码:
#include "SerialPort.h"
namespace Ui {
class MainWindow;
}
class MainWindow : public QMainWindow
{
Q_OBJECT
public:
explicit MainWindow(QWidget *parent = 0);
~MainWindow();
std::shared_ptr<SerialPort> serialPort;
private:
Ui::MainWindow *ui;
};
和cpp文件代码:
MainWindow::MainWindow(QWidget *parent) :
QMainWindow(parent),
ui(new Ui::MainWindow),
serialPort(std::shared_ptr<SerialPort>(new SerialPort(this)))
{
ui->setupUi(this);
}
其他类代码:
SerialPort::SerialPort(MainWindow *ptrWindow) :
ptrMainWindow(ptrWindow)
{
}
及其标题文件:
//#include <MainWindow.h> <- cannot include because of error "connot find file"
class MainWindow;
class SerialPort : public QObject
{
public:
SerialPort(MainWindow *ptrWindow = 0);
private:
std::shared_ptr<MainWindow> ptrMainWindow;
};