formal_protocol-3.m

来自「Mac OS X 10.4.9 for x86 Source Code gcc」· M 代码 · 共 59 行

M
59
字号
/* Contributed by Nicola Pero - Fri Mar  9 21:35:47 CET 2001 */#include <objc/objc.h>#include <objc/Object.h>/* Test defining two protocol, a class adopting both of them,    and using an object of type `id <Protocol1, Protocol2>' */ @protocol Enabling- (BOOL) isEnabled;- (void) setEnabled: (BOOL)flag;@end@protocol Evaluating- (int) importance;@end@interface Feature : Object <Enabling, Evaluating>{  const char *name;  BOOL isEnabled;}@end@implementation Feature- (BOOL) isEnabled{  return isEnabled;}- (void) setEnabled: (BOOL)flag{  isEnabled = flag;}- (int) importance{  return 1000;}@endint main (void){  id <Enabling, Evaluating> object;  object = [Feature new];  [object setEnabled: YES];  if (![object isEnabled])    {      abort ();    }  if ([object importance] != 1000)    {      abort ();    }  return 0;}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?