crossplatform.ru

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

> контейнер для указателей, Q
void*
  опции профиля:
сообщение 1.8.2008, 21:06
Сообщение #1


Программист-самоучка
***

Группа: Участник
Сообщений: 429
Регистрация: 4.6.2008
Пользователь №: 193

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




Репутация:   3  


есть QList<QTreeWidgetItem*>, получаемый с помощью QTreeWidget::selectedItems(). Нужно брать первый элемент контейнера(в нем больше быть и не может) и для работы с ним преобразовать этот элемент в мой тип(TreeItem*, класс унаследованный от QTreeWidgetItem). Вот проблемный участок кода:
QTreeWidgetItem *i = tree->selectedItems().first(); //tree - QTreeWidget
TreeItem *item = qobject_cast<TreeItem*>(i);

но компилятор ругается:
ошибка: нет соответствующей функции для вызова ‘qobject_cast(QTreeWidgetItem*&)’

как с этим бороться? или может для указателей нужно использовать какие-то другие контейнеры, специализированные?
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
 
Начать новую тему
Ответов
Litkevich Yuriy
  опции профиля:
сообщение 1.8.2008, 21:26
Сообщение #2


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

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




Репутация:   94  


вот на это место внимание обрати:
Цитата(void* @ 2.8.2008, 1:06) *
QTreeWidgetItem*&


метод .first() возвращает ссылку, а не указатель
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

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


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


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




RSS Текстовая версия Сейчас: 23.11.2024, 3:57