С++ 21. Const-, reverse-, output-итераторы. Потоковые итераторы.

  Рет қаралды 6,493

Лекторий ФПМИ

Лекторий ФПМИ

Күн бұрын

Лектор: Илья Мещерин.

Пікірлер: 8
@KotlasBoy
@KotlasBoy 6 ай бұрын
Привет 107 группе!
@risesduckness
@risesduckness 5 ай бұрын
Привет)))
@ivankorotkov2563
@ivankorotkov2563 3 жыл бұрын
44:40 reverse_iterator::base возвращает обычный итератор не "на тоже самое", а на следующий элемент (в порядке до реверса). Т.е. v.rbegin().base() == v.end(). Иначе например не очень понятно что должен вернуть итератор rend().base() - итератор на элемент "до первого" звучит стремно, а v.rend().base() == v.begin() выглядит ок.
@bloodyink3423
@bloodyink3423 2 жыл бұрын
Да не, там прикол, из-за которого к словам Илюхи можно докопаться. Мы в реверс итер отдаём какой-то итератор = underlying, им инициализируется реверс итер. Далее при разыменовании реверс итера у нас возвращается разыменованный previous от underlying. Там есть соотношение: *reverse_it == *(underlying - 1). Ну и *reverse_it(i)base() == i
@johnnygray6755
@johnnygray6755 2 жыл бұрын
такой подход к написанию const_iterator не сработает для operator=, когда мы можем приравнять iter=const_iter, а наоборот ( const_iter = iter) нет
@stupnum8764
@stupnum8764 10 ай бұрын
вы имеете ввиду перегрузку оператора = как члена? я переписал +- также как тут, и у меня не в ту, не в другую сторону не работает, можно только константый к константному и неконст к неконст
@siarheimarozau6763
@siarheimarozau6763 2 жыл бұрын
Готовиться к лекциям надо более тщательно! код под main выполняется без реализации back_insert_iterator. #include #include //#include //#include /* template struct back_insert_iterator { private: Container& container; public: back_insert_iterator& operator ++() { return *this; } back_insert_iterator& operator *() { return *this; } typename Container::value_type& operator =(const typename Container::value_type& value) { container.push_back(value); return container.back(); } }; */ int main() { std::vector v(10); std::vector vv; std::cout
С++ 29. Perfect forwarding, xvalues, reference qualifiers
1:31:26
Лекторий ФПМИ
Рет қаралды 4,2 М.
Шок. Никокадо Авокадо похудел на 110 кг
00:44
Amazing Parenting Hacks! 👶✨ #ParentingTips #LifeHacks
00:18
Snack Chat
Рет қаралды 22 МЛН
Brawl Stars Edit😈📕
00:15
Kan Andrey
Рет қаралды 54 МЛН
Apple peeling hack @scottsreality
00:37
_vector_
Рет қаралды 132 МЛН
C++ 27. move-семантика, move-конструкторы
1:21:15
Лекторий ФПМИ
Рет қаралды 10 М.
С++ 4.2. Приведение типов. ООП: Классы и  структуры.
1:13:31
С++ 10. Множественное и виртуальное наследование.
1:32:40
С++ 5. Конструкторы и деструкторы.
1:32:10
Лекторий ФПМИ
Рет қаралды 7 М.
C++ 11. Полиморфизм и виртуальные функции.
1:34:03
Лекторий ФПМИ
Рет қаралды 6 М.
Шок. Никокадо Авокадо похудел на 110 кг
00:44