Qt QList C3892: невозможно присвоить переменную, которая является константой

У меня есть проблема правильности с QList.

У меня есть метод getValue чья подпись я не могу изменить, возвращая const double и здесь

double vs = MinInput->getValue(0, 0);

против является постоянным

Я хотел бы построить QList с результатами этого метода, и я получаю ошибку C3892.

Поскольку мой список является списком QList, нельзя добавить const double (?)

Код такой

    QList<double> minmax;
for (int i = 0; i < 2*(3+othercutoffs_var_len) ; i++  )
minmax.append( 0.0 );QSP< const VarInterface<double> > MinInput = ctx.getInputVar<double>(ctx.input(Id::fromString(QL1s("Min")))[0] );
const double vs = MinInput->getValue(0, 0);
minmax.at(0) = vs;

и эта самая последняя строка кода доставляет мне неприятности. (другие ошибки при заполнении списка другими такими константными двойными числами)

подпись для getValue такая

const TYPE & VarData<TYPE>::getValue( uint r, uint c ) const

0

Решение

Я думаю, правильный код будет:

minmax[0] = vs;

Обновить:

QList::at возвращается const ссылка, которая не может быть изменена.

3

Другие решения

QList::at(int i) это функция получения Возвращает const ссылка, и вы не можете ничего присвоить ей.

использование QList::operator[](int i) или же QList::replace(int i, const & T value) установить значение в положении i,

2

По вопросам рекламы [email protected]