gpt4 book ai didi

objective-c - 创建一个 "permanent"Cocoa 对象

转载 作者:行者123 更新时间:2023-12-03 17:30:55 26 4
gpt4 key购买 nike

我有一个对象工厂,它分发一些“常量”、不可变对象(immutable对象)的实例。我希望保护这些对象免受客户端不良内存管理的影响。这就是我重写类的关键方法的方法。我是否遗漏了任何内容(代码或其他注意事项)?

- (id)retain
{
return self;
}

- (NSUInteger)retainCount
{
return UINT_MAX;
}

- (void)release
{
// nothing.
}

对后来的路过问题读者的更新:这是(故意)一个特殊情况的双黑钻石 cocoa 问题。如果您尝试创建常规单例,请参阅下面有关共享实例等的答案。这个问题(以及所选答案)属于“在选择此实现策略之前,您应该确保您知道自己在做什么” .

最佳答案

听起来您正在尝试创建一个单例。这是一种非常常见的模式,并且有很多关于它的文章。这些链接应该告诉您需要了解的所有信息:

http://www.mikeash.com/pyblog/friday-qa-2009-10-02-care-and-feeding-of-singletons.html

http://boredzo.org/blog/archives/2009-06-17/doing-it-wrong

当然还有 Apple 文档 herehere .

关于objective-c - 创建一个 "permanent"Cocoa 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2831660/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com