1@class Base; 2@protocol _Protocol; 3 4@interface ClassA { 5} 6-(void) func1:(Base<_Protocol> *)inTarget; 7@end 8 9int main() 10{ 11 ClassA* theA = 0; 12 Base<_Protocol>* myBase = 0; 13 [theA func1:myBase]; 14 15 return 0; 16} 17 18