crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

> Ошибка при работе QVector< T <T> > или QList
horse315
  опции профиля:
сообщение 18.4.2010, 23:09
Сообщение #1


Новичок


Группа: Новичок
Сообщений: 4
Регистрация: 18.4.2010
Пользователь №: 1640

Спасибо сказали: 0 раз(а)




Репутация:   0  


Здравствуйте!
Имеем такое дело:
struct HasseRange{
    QVector<unsigned int> mark;
    QVector<QList <QChar> > vlist;
};
...

    struct HasseRange hr;
    QList<QChar> QL_QC_TMP;

    QList<QChar>::const_iterator it = Vr.constBegin();
    for(;it!=Vr.constEnd();++it){
        hr.mark.append(0);
        QL_QC_TMP.clear();
        QL_QC_TMP.append(*it);
        hr.vlist.append(QL_QC_TMP);
        //hr.vlist.append(*it);
    }

и теперь внимание:

    hr.vlist.at(1).append(QChar('a'));

Такая штука при попытке скомпилить дает следующее сообщение:

H:/bsd/graph/makehasse.cpp:28: error: passing `const QList<QChar>' as `this' argument of `void QList<T>::append(const T&) [with T = QChar]' discards qualifiers

Designer в качестве аргумента аппенд предлагает и QChar и QList<QChar> все одно, результат один и тот же. Что тут за this такой вообще не понятно. Пробовал обойти все, заменить на QList<QString>, получил то же самое. Где я наглупил, скажите пожалуйста.

p.s.
НО если тот же append сделать через итератор, то все просто прекрасно работает!
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Сообщений в этой теме


Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 20.4.2024, 4:10