Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 20, средняя оценка - 4.60
GRANDEATH
39 / 39 / 1
Регистрация: 13.09.2009
Сообщений: 108
#1

Контейнер list - C++

07.03.2010, 15:56. Просмотров 2567. Ответов 2
Метки нет (Все метки)

Дорогие форумчане!
Использую в проге list из STL. При попытке ... я даже не знаю как обозвать это, поэтому вот кусок кода функции:
C++
1
2
3
4
5
6
7
8
9
10
11
12
man_unit* enterprise_empl_base::SearchByName(char* name)
{
    for ( this->id = base.begin(); this->id != base.end(); this->id++) // Ищи с первого до последнего
    {
        if (strcmp( id->GetName(), name) == 0)
        {
            //man_unit* a = id->this;
            return reinterpret_cast <man_unit*> (id);
        }
    }
    return NULL; //Такого нет
}
Класс
C++
1
2
3
4
5
6
class enterprise_empl_base
{ .......
private:
    list <man_unit> base;
    list <man_unit>::iterator id; //Используется для различных операций
}
Ошика идет разумеется на
C++
1
return reinterpret_cast <man_unit*> (id);
Я пытался и dynamic_cast, и static_cast, и ,вообще, без ничего, результат один - ошибка.
Как заствить функцию возвращить указатель на man_unit, а не на "std::list<_Ty>::_Iterator<_Secure_validation>"???
помогите, кто может.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
07.03.2010, 15:56     Контейнер list
Посмотрите здесь:

Контейнер list - C++
Добрый день! Помогите пожалуйста разобраться, никогда раньше не работал с листом. Задача следующая: В числовой последовательности...

Массив, <list>, контейнер - C++
Создать динамический упорядоченный числовой массив. Обеспечить добавление новых чисел с сохранением упорядоченности. //Обязательное...

Контейнер list из указателей объектов - C++
Есть абстрактный класс и производный от него.В производном переопределяется вирт ф-ия draw(). Добавляю в контейнер указатель на объект,...

Контейнер list, вывод содержимого в заданном порядке - C++
Как с помощью двунаправленных итераторов вывести содержимое списка в таком порядке: первый эл-т,последний,второй эл-т,предпоследний и...

Тип значения в контейнере map - контейнер list - C++
Возможно ли использовать следующий код: struct p { int id; }; int main() { map&lt;string, list&lt;p&gt; &gt; m;

Используя контейнер std::list, получить заданные выражения - C++
Используя стандартную библиотеку шаблонов STL и класс list по работе с двунаправленным списком, выполнить следующие задачу: Даны...

Контейнеры (функция, которая бы помогла отсортировать контейнер List) - C++
составить булевскую функцию, которая бы помогла отсортировать контейнер List. контейнер содержит элементы типа string. я эту функцию...

Используя контейнер std::list, упорядочить заданную последовательность согласно условию - C++
Используя стандартную библиотеку шаблонов STL и класс list по работе с двунаправленным списком, выполнить следующие задачу: Даны...

В одномерном массиве посчитать сумму элементов до последнего нулевого значения. Использовать контейнер - List - C++
не могу сделать...

контейнер - C++
Создать контейнер, в который можно добавлять и удалять методы. Размер контейнера должен увеличиваться автоматически. Вот такое задание ,...

контейнер vector - C++
Как я понимаю, vector представляет собой что-то вроде динамического массива. Но массивы бывают одномерные,двумерные и так далее. Есть ли...

Контейнер stack - C++
есть функция, которая возвращает контейнер stack(точнее ссылку на его верхний элемент return binary.top();). как можно достать все...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Nick Alte
Эксперт С++
1608 / 1000 / 118
Регистрация: 27.09.2009
Сообщений: 1,930
Завершенные тесты: 1
07.03.2010, 17:20     Контейнер list #2
C++
1
return &(*id);
Добавлено через 3 минуты
Хотя итератор соблюдает семантику указателя, он указателем в общем случае не является. Поэтому преобразован непосредственно в указатель он быть не может.
Соблюдение семантики указателя означает, что итераторы должны разыменовываться в хранимые объекты, адрес которых вполне можно взять. Уж адрес-то точно является указателем.
GRANDEATH
39 / 39 / 1
Регистрация: 13.09.2009
Сообщений: 108
07.03.2010, 17:21  [ТС]     Контейнер list #3

Спасибо!!!!
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru