Re: [問題] 關於 getter method

看板MacDev作者 (星空下的鮪魚)時間15年前 (2010/07/03 20:29), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/4 (看更多)
※ 引述《Senkousha ( )》之銘言: : hmm, 想請問一下, : 假設我在 interface 裡宣告一個 id 變數要 export 出去, : 但因為內部是用 NSMutableArray 實作的, : 不能讓外部的呼叫者拿到,因此用 getter 包了一層 copy… : 那我自己在內部有辦法產生另外一個(真的) getter, : 不是拿 copy 出的 id,而是直接拿到真正的 NSMutableArray pointer 嗎? : ---- : 雖然說在 init 裡面 alloc 好之後就可以直接存取, : 但是心裡總覺得毛毛的(?)想要用 [self iVarName]… 有一種寫法,只是要多key好幾行… 通常是為了封裝自己的實作,讓外部的人只知道公開的介面。 但是如果外部的人根本就是自己, 而且這東西也不是要包成library之類的…或是包成元件~~ 這樣寫我是覺得很浪費時間… Foo.h @interface Foo { @private id mPrivateData; } @property .... Foo.m @interface PrivateFoo { NSInteger ....; NSString *....; .... } @end @implementation Foo - (id)init { if (self = [super init]) { mPrivateData = [[PrivateFoo alloc] init]; if (mPrivateData == nil) { [self release]; return nil; } // Custom initialization ... } return self; } - (void)dealloc { [mPrivateData release]; mPrivateData = nil; [super dealloc]; } @end -- <. . 野ブタパワー ~~~ @@ 注入!! ︱﹨ -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 218.160.239.148
文章代碼(AID): #1CBoqM4W (MacDev)
討論串 (同標題文章)
文章代碼(AID): #1CBoqM4W (MacDev)