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

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

Войти
Регистрация
Восстановить пароль
 
Рейтинг: Рейтинг темы: голосов - 22, средняя оценка - 4.91
Alexpm
3 / 3 / 0
Регистрация: 06.09.2011
Сообщений: 47
#1

STL List Iterator - C++

20.05.2012, 10:28. Просмотров 3202. Ответов 3
Метки нет (Все метки)

Как в STL list из итератора получить номер элемента, на который он указывает?
Вот пример с вектором:
C++
1
2
3
cliext::vector<int>::iterator it;
it=cliext::find(p, VEC.end(), Convert::ToInt32(textBox3->Text));
int n=it.get_bias(); //вот тут получаем номер элемента в векторе
С list'ом таким образом не получается.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.05.2012, 10:28
Здравствуйте! Я подобрал для вас темы с ответами на вопрос STL List Iterator (C++):

STL vector iterator - C++
есть список в списке... ..точнее: vector &lt;Class1*&gt; mapClass1; а уже в Class1 определён вектор vector &lt;Class2*&gt; mapClass2; ...

STL, что такое iterator? - C++
Взываю о помощи ко всему прогрессивному человечеству, Что это: vector&lt;float&gt;::iterator iter;

stl iterator обратный проход - C++
как делается ?

STL, vector. iterator. как работает? - C++
void invertArrange() //метод инвертирования порядка слов { istringstream ist(operLine);...

list iterator template - C++
пишу в хэдере #include &lt;list&gt; using namespace std; template &lt;class T&gt; struct Transition { list&lt;T&gt;::iterator it; }; ...

Ошибка list iterator not incrementable - C++
код: std::list&lt;Platform * &gt; Platform::Platform_list; //статическое поле класса Platform перебираем элементы и удаляем их при...

3
Toshkarik
1141 / 858 / 51
Регистрация: 03.08.2011
Сообщений: 2,386
Завершенные тесты: 1
20.05.2012, 10:32 #2
C++
1
2
std::vector< int > f( 10 );
std::cout << ( f.end() - f.begin()) << std::endl;
Вот по такому принципу.
0
diagon
Higher
1929 / 1195 / 49
Регистрация: 02.05.2010
Сообщений: 2,925
Записей в блоге: 2
20.05.2012, 10:38 #3
C++
1
int n = std::distance(list.begin(), it);
Правда тут сложность линейная, но для списка более оптимального способа нет.
2
Alexpm
3 / 3 / 0
Регистрация: 06.09.2011
Сообщений: 47
20.05.2012, 10:43  [ТС] #4
Цитата Сообщение от diagon Посмотреть сообщение
C++
1
int n = std::distance(list.begin(), it);
Правда тут сложность линейная, но для списка более оптимального способа нет.
Спасибо, работает.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.05.2012, 10:43
Привет! Вот еще темы с ответами:

Ошибка list iterator not dereferencable - C++
Ошибка при использовании итератора. Хэлп, сос :cry: void client_login(list&lt;client&gt; client_list) { char name, login, password,...

Работа с STL list + пропись List.h - C++
Здравствуйте! Помогите, пожалуйста, разобраться с STL list. Нужно сделать программу в которой будет содержаться класс Student, прописать...

Разыменование итератора std::list<vector<>>::iterator - C++
Здравствуйте, есть код: list&lt;vector&lt;int&gt;&gt; L; L.push_front(vector&lt;int&gt;()); L.begin()-&gt;push_back(100); cout &lt;&lt;...

List iterator что делает данная строка кода - C++
for (list&lt;int&gt;::iterator i = sequence.begin(); i != sequence.end(); i++) (*result) &lt;&lt; (i != sequence.begin() ? &quot; &quot; : &quot;&quot;) &lt;&lt; (*i); ...


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

Или воспользуйтесь поиском по форуму:
4
Yandex
Объявления
20.05.2012, 10:43
Ответ Создать тему
Опции темы

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