Цитата
Я ещё не проверял, но как то тупо сделано
Да у тебя все темы так начинаются — "я пока ничего не понял, но уже знаю что можно лучше"
Не хочешь заняться разработкой своего языка? В котором все будет идеально правильно и максимально универсально
Цитата
А если я захочу удалить в середине указатель на функцию, то что мне делать?
Если ты захотел удалить метод из середины — лучше всего сразу пересмотреть архитектуру, т.к. ты пытаешься забивать гвозди лопатой
Иметь несколько ссылок на один метод в списке вызовов делегата уже не совсем обычно, а если еще и важен порядок — это точно косяк
Потому что формально порядок в котором они вызываются вообще не определен, и если ты полагаешься на него, то получаешь знакомый всем сишникам undefined behavior
Цитата
Вот как считаешь, это преимущество языка?
Я считаю это грамотной реализацией publisher-subscriber
В этой модели у подписчиков не должно быть возможности влиять на других подписчиков, да и вообще знать о них
Сам вопрос "удалить из середины" предполагает что ты знаешь, что их там несколько и можешь сказать точный индекс — такого не должно быть
Ты должен только иметь возможность подписаться и отписаться, не более
А если хочешь свой велосипед, сделай List<Action> и удаляй что хочешь, можешь даже вызывать их справа налево через один если тебе это нужно.