Скорее всего, это не очень хорошая идея. Я знаю, что при переходе к 64-битной среде некоторые вещи во время выполнения изменились и не имели замены.
В документах даже явно сказано не трогать, и это не исключение.
Однако вы можете использовать class_addMethod
, чтобы добавить функциональность в данный ранее существующий класс. Тем не менее, это также выполнимо через категории.
Вы также можете использовать class_replaceMethod
для переопределения метода, другой возможный метод - использовать категорию (или class_addMethod
) для добавления метода замены. Затем, используя method_exchangeImplementations
, вы можете поменять их местами так, чтобы оригинал оставался доступным для вызова.
В целом, хотя в большинстве случаев это темное вуду, и если вы не испытываете желания и не хотите много тестировать, я бы искал альтернативный дизайн.