Вы не можете объявить ivars за @protocol
s, но вы можете заставить соответствующий класс реализовать аксессор и мутатор, что похоже на то, к чему вы стремитесь.Например:
@protocol Priced
@property(assign, nonatomic) double price;
@end
@interface Carrot : NSObject <Priced> {
double price;
}
@end
@implementation Carrot
@synthesize price;
@end