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

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

Войти
Регистрация
Восстановить пароль
 
Drop8Dead
0 / 0 / 0
Регистрация: 09.05.2012
Сообщений: 52
#1

Как дозаписать элемент в list - C++

23.02.2014, 20:16. Просмотров 155. Ответов 0
Метки нет (Все метки)

Имеется структура :

C++
1
2
3
4
5
6
struct InverseIndex
{
int NumberOfWorld;//Номер слова
string Word; //само слово
 set <int> SetOfDocuments;//список документов, где встречалось слово
};
и list этих структур:

C++
1
list <InverseIndex> ListOfInvIndex;
Программа считывает слова из файлов (у каждого файла есть номер) и записывает их в структуру. Затем эта структура записывается в List.

Но когда считывается слово, которое уже есть в list, то нужно добавить во множество set номер документа, в котором встретилось это слово (то есть изменить поле структуры),
C++
1
set <int> SetOfDocuments;
Вопрос: как обратиться к элементу множества и изменить поле в структуре?

Делал так

C++
1
2
3
4
5
6
7
8
9
10
11
12
typedef list<InverseIndex>::const_iterator LI;
            for (LI i=ListOfInvIndex.begin();i!=ListOfInvIndex.end();i++)
                {
                   const InverseIndex& e=*i;
 
                   if(e.Word==Word)
                   {
                      
                      ListOfInvIndex[i].SetOfDocuments.insert(Document.NumberOfDocement);
                      FoundInList = true;
                      break;
                   }//if
Но здесь ошибка

C++
1
 ListOfInvIndex[i].SetOfDocuments.insert(Document.NumberOfDocement);
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
23.02.2014, 20:16     Как дозаписать элемент в list
Посмотрите здесь:

Как удалить первый элемент из std::list? - C++
Скажите как удалить первый элемент из лист ругается вот как 181 C:\Documents and Settings\Loner\Рабочий стол\5.37\Bin.cpp 'class...

Удалить элемент из list - C++
Добрый день, нужно удалить значения в контейнере. Есть склад с фруктами, и пользователь хочет удалить определённый фрукт из таблицы. ...

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

Переместить элемент внутри списка std::list - C++
Что-то я не пойму, простая вроде задача - переместить элемент внутри спиcка std::list - стандартной функции нету что-ли?

STL list. Какая функция ищет указатель на элемент равный а ? - C++
Есть список с элементами - объектами класса А. В классе А описан operator== (он нестандартный). Вопрос, какая функция будет искать в...

Как инициализировать list массивов - C++
как запушить елементы массива в list? int arr {111, 222}; list&lt;int&gt; my_list; если так: my_list.push_back(arr); ...

Как вывести list<string>? - C++
list&lt;string&gt; the_list_input;

как передать struct в list - C++
Доброго времени суток. Такой вопрос: есть определенная структура, в которой есть несколько полей typedef struct _person{ long...

Как вывести содержимое list? - C++
есть вот такой класс. Когда в main пытаюсь вывести содержимое list, выкидывает ошибка &quot;list iterators incompatible&quot;. Ошибка именно в этих...

Как удалить нужный элемент из списка или заменить этот элемент на другой? - C++
Доброго времени суток, господа! Есть список: list&lt;double&gt; list1; Есть возможность добавить в начало или в конец списка елементы:...


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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Ответ Создать тему
Опции темы

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