Название: Наследование вообще и QDialog в частности. Отправлено: fisenkdima от Февраль 25, 2013, 07:36 Захотелось мне что-то создать свой класс, наследующийся от QDialog. И решил я ему в конструктор передавать экземпляр класса QString, дабы его потом в этом диалоге отобразить.
Выглядит это так: *.h: Код: explicit Dialog( QString label, QWidget *parent = 0 ); Код: Dialog::Dialog( QString label, QWidget *parent = 0 ) : На получившийся код компилятор ругается следующими бранными словами, смысл которых я никак не пойму: dialog.cpp:4: ошибка: default argument given for parameter 2 of 'Dialog::Dialog(QString, QWidget*)' [-fpermissive] dialog.h:15: ошибка: after previous specification in 'Dialog::Dialog(QString, QWidget*)' [-fpermissive] Люди добрые, если не сложно, подскажите холопу место, где он не прав. Название: Re: Наследование вообще и QDialog в частности. Отправлено: GreatSnake от Февраль 25, 2013, 07:45 Компилятор же ясно даёт понять, что "default argument given for parameter 2", т.е. "QWidget *parent = 0", позволительно описывать только в одном месте, т.е. в инклюднике.
Да и QString не мешало бы описать как "const reference". Название: Re: Наследование вообще и QDialog в частности. Отправлено: fisenkdima от Февраль 25, 2013, 07:52 Слушаюсь и повинуюсь, мастер)
Цитировать т.е. "QWidget *parent = 0", позволительно описывать только в одном месте, т.е. в инклюднике. Я впервые столкнулся с ошибкой вида "default argument given for parameter Х". Поэтому для меня это не было очевидно. Собственно поэтому и спрашивал.И, да, на счёт ссылки я понял. Глупый недочёт. Название: Re: Наследование вообще и QDialog в частности. Отправлено: fisenkdima от Февраль 25, 2013, 07:55 Но вот незадача, после этой поправки он выдал парочку новых ругательств:
ошибка: cannot find -lGL ошибка: collect2: ld returned 1 exit status Что они могут значить? Название: Re: Наследование вообще и QDialog в частности. Отправлено: GreatSnake от Февраль 25, 2013, 08:16 Компоновщик не нашел OpenGL библиотеку.
|