На этом уроке подробно показываю и объясняю, что такое делегаты, зачем они нужны и как их использовать.
Чтобы Делегат был доступен в другом классе - он должен быть объявлен внутри одного пространства имён namespace,
Дата отправки отчёта:
8 марта 2018 г.
Задание выполнено: за
124 дня 17 час. 53 мин.
Чему научился:
В этом уроке впервые использовал связку autotools(система сборки проекта) + check(модульные тесты) + git. Попутно потренеровал навыки разработки через тестирование TDD. Зоопарк получился веселый и трудоемкий, на все задание ушло около 7 часов. В языке С нет встроенных делегатов, поэтому разработал "свои", на базе односвязного списка и указателей на функции. Реализовал операторы += -= через функции delegate_add delegate_remove и добился схожего функционала с программой из видеоурока.
Что было сложным:
Собрать проект с помощью autotools, добиться выполнения команды make distcheck.
Научился: В этом уроке самый главный акцент надо было слделать, на том , что делегат должен был быть объявлен внутри Namespace , а не класса, тогда он будет выступать как глобальный "буфер", что через него можно гонять функции между другими классами внутри этого Namespace.
Научился: Узнал о существовании делегатов и попробовал их "на ощупь" Трудности: Не совсем выстроилась логика создания делегата - что, в каком порядке и почему надо делать...