iOS存储指针

时间:2012-06-18 07:49:59

标签: ios ios5

在我的ios应用程序中,我想存储一个对象的引用。这个对象可以是来自界面A,B,C或D的实例。我知道它总是来自这四个中的一个,但永远不知道哪一个。我如何在我的代码中表示这个对象?

此致,Zoli

2 个答案:

答案 0 :(得分:0)

将其表示为类型ID。

id ptr;

另外,请注意您可以将 id 类型专门用于某些协议。

id <SomeProtocol>;

答案 1 :(得分:0)

我明白你应该创建该对象的共享实例。 例如: -

  1. 创建一个名为SavedReference的新类。
  2. 并在实现文件中写入此代码
  3. 代码:

    static SavedReference *sharedInstance = nil;  //if using iOS5 or above no need to nil it.    
    +(SavedReference*)sharedInstance    
    {     
        @synchronized(self)
        {   
             if(!sharedInstance)     
             {   
                  sharedInstance = [[self alloc]init];
                  return sharedInstance;
             }
         }
        return nil; 
    }
    
    -(id)init
    {
        self = [super init];    
        if(self)    
        {
            //initialize variables
        }
    
        return self;
     }
    

    并将此课程称为[[SavedReference sharedInstance] write ur method]