Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Меню
Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

Документы

Медиа

Назад

Что такое witness table и где она используется?

Вопрос проверяет понимание того, как Swift реализует протоколы и полиморфизм без наследования.

Короткий ответ

Witness table — это таблица, которая связывает конкретный тип с реализациями требований протокола. Когда тип соответствует протоколу, компилятор создаёт такую таблицу. Через неё Swift понимает, какие функции вызывать при работе с протоколом. Это основной механизм вызова методов у протоколов. Он используется вместо vtable для value-типов и протоколов.

Длинный ответ

Зарегистрироваться

Развернутый ответ доступен только зарегистрированным пользователям.

Уровень

  • Рейтинг:

    5

  • Сложность:

    8

Навыки

  • Swift

    Swift

Ключевые слова

#witness

#table

#protocol

Подпишись на iOS Developer в телеграм