2012-12-28 2 views
0

그래서 내가 QuickNoteDetailViewController.m기존 객체에 대한 포인터? 좋아

가 어떻게 포인터를받을 수 있나요 다른 파일에서이 클래스의 동일한 인스턴스에 액세스 할 수 있어야합니다 그리고 QuickNoteNotesDataController.m

QuickNoteNotesDataController *dataController = [[QuickNoteNotesDataController alloc] init]; 

년과 같이 초기화하기 클래스를 가지고 alloc init을 다시 호출하고 새 인스턴스를 만들지 않고 동일한 인스턴스에?

+0

내 대답을 얻었습니까? –

+0

누군가 내 코드에 대한 응답을 구현했으며 동의하셨습니까? 당신은 코드를 물어 보았어 야합니다 : ( –

답변

1

당신은 하나 개의 인스턴스 만 필요한 경우가 싱글로 갈 수 : 이미 속성이

//In QuickNoteNotesDataController.m 
static QuickNoteNotesDataController *sharedInstance; 
+ (id)sharedDataController { 
    static dispatch_once_t predicate; 
    dispatch_once(&predicate, ^{ 
     sharedInstance = [[QuickNoteNotesDataController alloc] init]; 
    }); 
    return sharedInstance; 
} 

그렇지 않으면 당신이 QuickNoteDetailViewController

@property (nonatomic, strong) QuickNoteNotesDataController *dataController 

의 속성을 만들고 dataController을 설정할 수를 detailViewController를 만들 때.

+0

맞지만, 아마도이 질문을 위해 앞당겨 질 것입니다. 다른 한편으로, 단 하나의 인스턴스 만이 필요하다는 것을 누가 알겠습니까? –

+0

@HermannKlecker - 덜 진보 된 대답은 무엇입니까? ? – totalitarian

+0

@HermannKlecker 당신이 맞아요, 편집했습니다 –

1

다른 클래스의 동일한 인스턴스 : 공유 인스턴스를 만들어야합니다.

또는 이에 대한 정적 속성.

하지만 extern variable으로 가지 마세요.

1

QuickNoteNotesDataController 클래스를 싱글 톤으로 만들면 전체 클래스에서이 클래스의 단일 인스턴스를 공유 할 수 있습니다.

관련 문제