Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
2 / 2 / 0
Регистрация: 27.11.2021
Сообщений: 129

Как правильно задать итератор

21.06.2022, 08:14. Показов 764. Ответов 2

Студворк — интернет-сервис помощи студентам
Добрый день. Имеется задание:

/
C++
1
2
3
4
5
6
7
8
9
Вставка элемента последовательности insert().
            //Реализуйте функцию, которая должна вставлять новый элемент
                //в начало вектора только при условии, что в векторе такого
                 //значения еще нет.
            //Проверьте работоспособность функции - в вектор vChar2 вставьте в начало вектора символ только при
            //условии, что в векторе такого символа еще нет.
                 //например: vChar2 - abc 
                 //При попытке вставить 'a' попытка должна быть проигнорирована
                 //При попытке вставить 'q' vChar2 - qabc
в main создал и заполнил вектор:
C++
1
2
3
4
5
6
7
vector <char> vChar2;
 
            vChar2.push_back('a');
            vChar2.push_back('b');
            vChar2.push_back('c');
 
            MyInsert(vChar2);
в h создал функцию :

C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
template<typename T> void MyInsert(std::vector<T> vec)
{
    vector<T>::iterator it = vec.begin();
    int size = vec.size();
    bool flag = false;
    T x;
    cout << " Введите элемент\n";
 
    std::cin >> x;
 
    while (it != vec.end())
    {
        if (*it == x)
        {
            flag = true;
            break;
        }
        ++it;
    }
    if (flag == false)
    {
        vec.insert(it - vec.size(), x);
    }
}
Выдаёт ошибку:
Ошибка C2760 синтаксическая ошибка: непредвиденный токен "идентификатор"; требуется ";"

Подскажите пожалуйста, что я делаю не так?
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
21.06.2022, 08:14
Ответы с готовыми решениями:

Как правильно вернуть итератор из метода
Всем привет. Есть класс обертка над контейнером, который рулит некоторыми сущностями И понадобилось получать итераторы на эти сущности -...

Как более менее правильно написать итератор(не STL).
Вот, например, пишу класс и всегда помню советы типа &quot;скрывайте реализацию класса&quot; или &quot;если функция по идее не должна изменять...

как правильно получить итератор на элемент двумерной талицы векторов
привет есть такая грандиозная конструкция std::vector&lt;std::vector&lt;std::vector&lt;double&gt;&gt;&gt; table; нужно получить итератор на...

2
19500 / 10105 / 2461
Регистрация: 30.01.2014
Сообщений: 17,818
21.06.2022, 10:24
Лучший ответ Сообщение было отмечено Nik_787 как решение

Решение

Цитата Сообщение от Nik_787 Посмотреть сообщение
vector<T>::iterator it = vec.begin();
C++
1
typename vector<T>::iterator it = vec.begin();
К итераторам эта тема отношения непосредственного не имеет.
Читать по ключевым словам "зависимые имена шаблонов".
1
2 / 2 / 0
Регистрация: 27.11.2021
Сообщений: 129
21.06.2022, 10:50  [ТС]
Спасибо!!!!
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
21.06.2022, 10:50
Помогаю со студенческими работами здесь

Почему не запоминается правильно итератор вектора?
Почему, если сделать что-то такое: #include &lt;iostream&gt; #include &lt;vector&gt; using namespace std; int main () { vector...

Итератор for работает не правильно. Не могу понять отчего
Дано задание: Люди стоят в очереди, но никогда не уходят из её начала, зато могут приходить в конец и уходить оттуда. Более того, иногда...

Как задать правильно условие???
Во введенных массивах найти последовательность максимальной длины из элементов, расположенных в порядке возрастания. Как правильно...

Как правильно задать if-else инструкцию?
Как правильно задать if-else инструкцию в данном коде? Оператор % не работает с типом double, хотя этот тип очень важен для точных...

Как правильно задать структуру
Как в &quot;trade tovar1&quot; правильно задать значения с массивов? #include &lt;iostream&gt; #include &lt;ctime&gt; //содержит time #include...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru