Я наткнулся на this, и я не уверен в действительности кода. Однако я никогда не сталкивался с чем-то вроде этого или ничего не читал об этом (я только начал objectC). Вот пример кодаНужно уточнить этот тип возврата
@implementation MyHTTPConnection
- (NSObject<HTTPResponse> *)httpResponseForMethod:(NSString *)method URI:(NSString *)path
{
HTTPLogTrace();
if ([path isEqualToString:@"/getElement"])
{
NSData *data = ...
HTTPDataResponse *response = [[HTTPDataResponse alloc] initWithData:data];
return response;
}
// default behavior for all other paths
return [super httpResponseForMethod:method URI:path];
}
@end
Мой вопрос в том, что здесь тип возврата?
(NSObject<HTTPResponse> *)
Он выглядит как указатель NSObject, который реализует объект HTTPResponse. Я придерживаюсь мнения, что это может быть просто написано, как этот
NSObject *
я упускаю что-нибудь? Я не знаю, почему было выбрано выше. Особенно с NSObject. Любые предложения, разъяснения по этому вопросу будут оценены.