я боролся с этой ошибкой в течение более двух часов:неполный типа и не может быть определен
error: aggregate 'Ui::UpdaterProgress updaterProgress' has incomplete type and cannot be defined
У меня есть простой экран пользовательского интерфейса на Qt. Настройка с помощью диалога:
#include <ui_UpdaterProgress.h>
namespace Ui {
class UpdaterProgress;
}
....
Ui::UpdaterProgress updaterProgress;
QDialog updateProgressDialog;
updaterProgress.setupUi(&updateProgressDialog);
Это простой интерфейс с иконкой, двумя метками, прогресс бар и кнопка отмены. Я делаю что-то неправильно здесь?
Я получаю эту ошибку, если я не делаю опережающее объявление:
error: 'UpdaterProgress' is not a member of 'Ui'
error: expected `;' before 'updaterProgress'
error: 'updaterProgress' was not declared in this scope
'ui_UpdaterProgress.h' должно иметь определение. Какое сообщение об ошибке вы получите, если вы не отправляете объявление самостоятельно? –
Если вы '# include'ing ui_UpdaterProgress.h, вам не нужно форвардное объявление. – Chris