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

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

Войти
Регистрация
Восстановить пароль
 
Flash_2oo9
3 / 3 / 0
Регистрация: 31.10.2012
Сообщений: 142
#1

Помощь с "::" в С++ - C++

05.11.2012, 22:17. Просмотров 306. Ответов 4
Метки нет (Все метки)

Добрый день ув. форумчани!
Нужна помощь с таким куском кода:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
. . .
cout«endl«"set1 = { ";
for( multiset<string>::const_iterator iter1 = set1.begin(); iter1 != set1.end(); iter1++)
{ 
if (*iter1 != "/end")
{ 
cout«*iter1«" ";
continue;
} 
} 
 
cout«"}";
. . .
вся программа про множества, но в принципе это неважно так как программа работает норм.
Но вот препод решил спросить что означает :: в отрывке(multiset<string>::const_iterator iter1 = set1.begin()) И чем его можно заменить? Такие вот 2 вопроса.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
05.11.2012, 22:17     Помощь с "::" в С++
Посмотрите здесь:

Мелодия "В траве сидел кузнечик" с помощь спецификаторов C++
Определить "Y" с точностью до члена ряда меньшего "e"(допустим: 0.001) C++
C++ Вычисление суммы позиций на которых в слове Х стоят буквы "в" и "п"
C++ Нужна помощь. Ошибка с #include "text.h".
C++ Подсчитать, колько раз в произвольном тексте встречается символ "*" и "+"
C++ Помощь с ошибками в коде программы "Hello world"
Помощь со структурой "Государство" C++
C++ В заданном двоичном коде заменить все цифры "0" на "1" и наоборот
Перебрать все слова длиной не более n, составленные из букв "а" и "b" C++
C++ Ошибка в Eclipse "Type Program "make" not found in PATH"
"Красный Тигр" vs. "Желтый Заяц". А каким будет 3005 год? C++
C++ Найти угол одной точки "A" в соотношении к точке "B" в градусах

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
I.M.
564 / 547 / 5
Регистрация: 16.12.2011
Сообщений: 1,389
05.11.2012, 22:21     Помощь с "::" в С++ #2
создается константный итератор iter1 и ему присваивается значение, которое возвращает метод set1.begin()
можно заменить на обычный итератор, на ключевое слово auto. Для контейнеров с определенный оператором [] можно заменить на обычный индекс i
Flash_2oo9
3 / 3 / 0
Регистрация: 31.10.2012
Сообщений: 142
05.11.2012, 22:32  [ТС]     Помощь с "::" в С++ #3
Можете, пожалуйста, реализовать вот этот момент: "можно заменить на обычный итератор, на ключевое слово auto. Для контейнеров с определенный оператором [] можно заменить на обычный индекс i" а то скажем так я в итератарах не силен)
Kuzia domovenok
1887 / 1742 / 117
Регистрация: 25.03.2012
Сообщений: 5,916
Записей в блоге: 1
05.11.2012, 22:47     Помощь с "::" в С++ #4
Цитата Сообщение от Flash_2oo9 Посмотреть сообщение
Но вот препод решил спросить что означает :: в отрывке(multiset<string>::const_iterator iter1 = set1.begin()) И чем его можно заменить? Такие вот 2 вопроса.
Препод просто понял, что ты вместо того, чтобы учиться программированию на примере задач на множества, попросил кого то реализовать твоё задание с помощью стандартной библиотеки шаблонов.
Поэтому можешь даже не пытаться защитить ему это задание в таком виде. Препод 1)не этого от тебя хочет, 2) знает, что шаблонами ты тоже пользоваться в любом случае не умеешь.
Так, что чтоб не провоцировать лишних претензий в свой адрес, сделай сам с нуля, без шаблонов.
Это лишь моя догадка.
igorrr37
1611 / 1239 / 124
Регистрация: 21.12.2010
Сообщений: 1,897
Записей в блоге: 7
06.11.2012, 10:09     Помощь с "::" в С++ #5
:: означает что тип const_iterator объявлен в классе multiset, заменить можно через typedef
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
25
#include <iostream>
#include <string>
 
class Base_iterator;
 
template<typename T>
class multiset
{
public:
    typedef Base_iterator const_iterator;
};
 
struct Base_iterator
{
 
};
 
int main ()
{
    multiset<std::string> mset;
    multiset<std::string>::const_iterator cit1;
    typedef typename multiset<std::string>::const_iterator mcit;
    mcit cit2; // замена
    return 0;
}
Yandex
Объявления
06.11.2012, 10:09     Помощь с "::" в С++
Ответ Создать тему
Опции темы

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