Мне недавно нужно было создать собственный тип, похожий на NSRect, который имеет точку привязки (по существу, NSRect с другим NSPoint в нем).
После some исследования я обнаружил, что на самом деле мне, вероятно, лучше всего сделать это класс ( как в подклассе NSObject), вместо использования struct. Почему тогда Apple делает эти типы структурными, а не классами? Похоже, что у него будет много преимуществ, таких как отсутствие необходимости в их переносе в NSValues, не нужно использовать функции C для взаимодействия с ними и т.д.
Я уверен, что у них будет причина. Это просто немного меньше использования памяти? Это просто исторический? Или я пропустил нечто большее?