Как исправить предупреждение: 'ksp_ecology::_Mkrt' will be initialized after [-Wreorder] double _Mkrt;?

212
24 февраля 2018, 22:06

предупреждение: 'ksp_ecology::_Mkrt' will be initialized after [-Wreorder] double _Mkrt;

Как исправить это предупреждение в коде? Тут передаю параметры в окно:

mainwindow.cpp:

void MainWindow::on_pushButton_clicked()
{
        double Mkrt = ui->spinBox->value();
        ksp_ecology *ksp_e= new ksp_ecology(ui->comboBox->currentText(),Mkrt, this);
        ksp_e->setAttribute(Qt::WA_DeleteOnClose);
        ksp_e->show();
}

ksp_ecology_hold.h:

...
class ksp_ecology : public QDialog
{
    Q_OBJECT
public:
    explicit ksp_ecology(QString KPT, double Mkrt, QWidget *parent = 0);
    ~ksp_ecology();       
private:
    Ui::ksp_ecology *ui;
    QString _KPT;
    double _Mkrt; //тут предупреждение 'ksp_ecology::_Mkrt' will be initialized after
};
...

ksp_ecology_hold.cpp:

...
ksp_ecology::ksp_ecology(QString KPT, double Mkrt, QWidget *parent) :
    _KPT(KPT),
    _Mkrt(Mkrt),
    QDialog(parent),
    ui(new Ui::ksp_ecology) {
    ui->setupUi(this);
}
...
Answer 1

У меня подозрение, что у вас не совсем верно переписано предупреждение...

Смотрите - у вас объявление членов вот в таком порядке:

Ui::ksp_ecology *ui;
QString _KPT;
double _Mkrt; 

И именно в таком порядке они будут инициализироваться в конструкторе!

Вы же пишете инициализацию как

_KPT(KPT),
_Mkrt(Mkrt),
QDialog(parent),
ui(new Ui::ksp_ecology)

Но на самом деле она будет выполняться так:

QDialog(parent),
ui(new Ui::ksp_ecology),
_KPT(KPT),
_Mkrt(Mkrt)

О чем, как мне кажется, вас и предупреждают.

Или вы изложили не всю информацию, относящуюся к делу...

READ ALSO
Совмещение CreateDirectory и fstream

Совмещение CreateDirectory и fstream

Я знаю, что папки создаются через CreateDirectory и что через fstream можно создать например текстовик с заданным текстом, а как их совместить? То есть...

239
Прерывания в блоке asm

Прерывания в блоке asm

Я хочу написать аналог функции getch(), используя при этом ассемблер, вот код который есть

164
Порядок вызова ф

Порядок вызова ф

Друзья, подскажите, какая последовательность выполнения кода, что вызыватся, куда копируется и тд

190
Чтение из файла string с пробелом

Чтение из файла string с пробелом

Как считать string с пробелом из файла?

197