Есть одна вещь, которую вы могли бы сделать ..........
Но будьте осторожны, некоторые могут считать это чистым богохульством. :)
Скажем, у вас есть класс с двумя методами, которые вы хотите иметь в отдельных файлах.
У вас будет три файла:
• Class.h
• Класс.м
• Class_otherMethod.m
Ваш Class.h должен выглядеть так же, как и любой другой. Я думаю, что лучше сохранить файл заголовка завершенным, но этот «трюк» может работать и с разделением файлов .h.
@interface Class : NSObject
- (void) method;
- (void) otherMethod;
@end
В вашем Class.m файле вы будете #include
Class_otherMethod.m внутри Class @implementation
следующим образом:
#import "Class.h"
@implementation Class
- (void) method {
// do something.
}
#include "Class_otherMethod.m"
@end
И ваш Class_otherMethod.m файл будет иметь только голую реализацию otherMethod:
- (void) otherMethod {
// do something different.
}
Почему это работает
Это довольно просто на самом деле. Препроцессор просто «вставляет» содержимое Class_otherMethod.m в файл Class.m , и компилятор обрабатывает его как один большой длинный файл. : P