Re: [問題] 關於 getter method
※ 引述《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
討論串 (同標題文章)
本文引述了以下文章的的內容:
完整討論串 (本文為第 3 之 4 篇):
MacDev 近期熱門文章
PTT數位生活區 即時熱門文章