Вы не можете. Иногда это плохая идея для создания подкласса (например, вы работаете с кластером классов), поэтому люди часто работают над этим, создавая совершенно новый класс (подкласс NSObject, а не рассматриваемого класса), который содержит переменная экземпляра, типом которой является рассматриваемый класс, а также требуемые добавленные переменные.
Например, если вы хотите создать подкласс NSString с дополнительной BOOL под названием "foo" ...
@interface StringWithFoo : NSObject
{
NSString* string;
BOOL foo;
}
... и затем реализуйте любые необходимые вам методы, или создайте общедоступный метод доступа, чтобы вы могли напрямую вызывать методы в строке, или даже использовали хитроумный трюк времени выполнения для соответствующей пересылки сообщений (задайте новый вопрос, если вы этого хотите делает).
Это пример шаблона декоратора .