Мне интересно, как работает динамический ввод в Objective-C. Я изучаю тип "id", я знаю, что он делает и как его использовать, но мне любопытно... Как реализовать такие функции под капотом?
Вы не можете определять/разрешать что-либо во время компиляции, только во время выполнения. Я думаю, это может просто указать на первый байт некоторого объекта в памяти, но как хранится подпись класса? Как он знает, что он сейчас указывает на и как он реализует различные геттеры для класса заостренного объекта?