⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 class_self-2.m

📁 linux下编程用 编译软件
💻 M
字号:
/* Contributed by Nicola Pero - Fri Oct 26 22:39:32 BST 2001 */#include <objc/objc.h>/* Test calling a class method on self where self has been redefined   to be another class - the call requires a cast *//* The first class */struct d{  int a;};@interface ClassA{  Class isa;}+ (Class) class;+ (struct d) method;@end@implementation ClassA+ (Class) class{  return self;}+ (struct d) method{  struct d u;  u.a = 5;    return u;}#ifdef __NEXT_RUNTIME__                                   + initialize { return self; }#endif@end/* The second class */@interface TestClass{  Class isa;}+ (void) test;@end@implementation TestClass+ (void) test{  self = [ClassA class];    if ([(Class)self method].a != 5)    {      abort ();    }}#ifdef __NEXT_RUNTIME__                                   + initialize { return self; }#endif@endint main (void){  [TestClass test];  return 0;}

⌨️ 快捷键说明

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