Я не парень из C++, поэтому некоторые простые вещи все еще меня заставляют. Я использую Qt и пытаюсь выполнить мой проект Qt (он будет использоваться для тестирования TCP/IP-соединения, которое я устанавливаю на прото-плате).Объявление указателя на объект класса внутри класса declaraion
В моем классе mainwindow я хочу указать указатели на клиентские объекты &, которые создаются при нажатии кнопки в форме главного окна. Но когда я помещаю это объявление в класс, он не выглядит так, как будто класс знает, что это такое, хотя я включил заголовочный файл.
Вот отрывок из моего класса MainWindow:
private:
Ui::MainWindow *ui;
EchoServer *mServer;
EchoClient *mClient;
...
Клиентские линии EchoServer & получите синтаксическую ошибку, а затем отсутствует спецификаторы типа.
Но когда я помещаю ту же декларацию в файл mainwindow.cpp в событие кнопки push, нет ошибки !? Здесь приведен фрагмент этой функции:
void MainWindow::on_pushButtonConnect_clicked()
{
const ushort port = 9999;
EchoServer *mServer;
EchoServer server((const QString)ui->lineEdit_IP_Addr->text(), port, ui);
EchoClient client((const QString)ui->lineEdit_IP_Addr->text(), port, ui);
...
Любая идея, что мне не хватает?
вы должны включать в себя заголовки, где вы определяете ваши EchoServer и EchoClient классы в файле заголовка MainWindow ... или вы можете переадресовать объявить EchoServer и классы EchoClient, потому что вы используете указатель на них –