Russian Qt Forum
Ноябрь 25, 2024, 01:44 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: QList< QList<int> >  (Прочитано 7115 раз)
akaMDA
Гость
« : Ноябрь 24, 2010, 22:17 »

Код:
 QList< QList<int> > *table;

 table = new QList< QList<int> >;

table->at(1).append(1);
Элемент не добавляется! получается что функция не можнт быть квалифицировна, т.к. перегружена для int и QList<int>. Что делать?
Записан
akaMDA
Гость
« Ответ #1 : Ноябрь 24, 2010, 22:19 »

Хотя обычный QList<int> работает...
Записан
Пантер
Administrator
Джедай : наставник для всех
*****
Offline Offline

Сообщений: 5876


Жаждущий знаний


Просмотр профиля WWW
« Ответ #2 : Ноябрь 24, 2010, 22:21 »

QList<int> list;
list.append (1);
table->append (list);
Записан

1. Qt - Qt Development Frameworks; QT - QuickTime
2. Не используйте в исходниках символы кириллицы!!!
3. Пользуйтесь тегом code при оформлении сообщений.
BRE
Гость
« Ответ #3 : Ноябрь 24, 2010, 22:23 »

Посмотреть, а что же возвращает:
const T & QList::at ( int i ) const

потом посмотреть, а что возвращает один из вариантов оператора:
T & QList::operator[] ( int i )

Подумать.  Улыбающийся
Записан
serg_hd
Хакер
*****
Offline Offline

Сообщений: 668



Просмотр профиля
« Ответ #4 : Ноябрь 24, 2010, 23:40 »

Либо
Код
C++ (Qt)
table->operator [](0).append(1);
 
либо (можно также заюзать оператор вставки вместо метода "append()", например, "(*table)[0] << 1")
Код
C++ (Qt)
(*table)[0].append(1);
 
Это при условии, что table содержит хотя бы один элемент, и, как правильно заметил BRE, table->at() возвратит const, поэтому пользоваться методом at() при вставке, естественно не стоит.
И вообще, к чему
Код
C++ (Qt)
table->at(1).append(1);
 
если table к тому моменту ещё пуст? Смеющийся
« Последнее редактирование: Ноябрь 25, 2010, 01:42 от serg_hd » Записан

kubuntu/Win7/x64/NetBeans
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.205 секунд. Запросов: 22.