为什么 Carbon 菜单管理器在 64 位 Cocoa 应用程序中工作

Why does Carbon Menu Manager work in a 64-bit Cocoa application

我有一个 64 位 Cocoa 应用程序,由于遗留原因调用 Carbon 函数 CancelMenuTracking 来关闭打开的菜单。 CancelMenuTrackingcom.apple.Carbon 包中动态 加载。

问题是,为什么它可以工作(在 macOS 10.14.4 上)?在删除该文档之前,几乎所有 Carbon 菜单管理器功能都被记录为在 64 位上不可用。

好吧,简单的答案是框架内部仍然使用了一些 Carbon——菜单绝对是其中之一——但这是一个实现细节,你可以认为它是私有的 API,这不应该t被使用,就像CGS和其他人一样。