Cocoa Singleton惯例

Cocoa Singleton惯例,第1张

概述可可充满了单身人士. Cocoa API使用时是否存在逻辑/常规差异 NSSingletonObject *so = [NSSingletonObject defaultSingleton]; 与 NSSingletonObject *so = [NSSingletonObject sharedSingleton]; ? 这不是一件大事,但我真的不明白为什么有时会使用一个而不是另一个. 我认为如果 可可充满了单身人士. Cocoa API使用时是否存在逻辑/常规差异

NSSingletonObject *so = [NSSingletonObject defaultSingleton];

NSSingletonObject *so = [NSSingletonObject sharedSingleton];

这不是一件大事,但我真的不明白为什么有时会使用一个而不是另一个.

解决方法 我认为如果它是一个真正的单例(例如 NSApplication),那么你会使用 – [JKFoo sharedFoo]约定.另一方面,如果类提供对默认实例的访问,但您仍然可以创建其他实例(例如 NSNotificationQueue或 @L_301_3@),则使用 – [JKbar defaultbar]约定.

旁注:如果你正在实现一些自己的Cocoa单例,那么有一个useful OpenSource header你可能想看看:)

[编辑:Mike Ash在他的blog上指出了使用GCD的更好的单一解决方案]

总结

以上是内存溢出为你收集整理的Cocoa Singleton惯例全部内容,希望文章能够帮你解决Cocoa Singleton惯例所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1070011.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存