objective-c - 如何创建仅在Objective-C中的一个类内使用的数据类型?

标签 objective-c ios nsmutablearray

我想我已经看完了,但是我找不到关于它的文档,因为我认为我不知道正确的术语。我需要知道如何编写一个只在另一个类中使用的特殊类,因此可以完全在另一个类的实现中编写。

基本上,我需要一个专门的NSMutableArray,它可以做三件事:

  • 在询问
  • 后删除最新的项目
  • 将该项目存储在last_most_recent_item变量
  • 跟踪是否已添加新项目
  • 如果未添加新项目,并且要求数组中的最后一个对象,则返回last_most_recent_item而不是实际的最后一个项目

  • 但是,这就是问题,我只需要在一个类中使用这个SpecialNSArray。因此,我想将声明和实现放在该类中,而不是放在单独的文件中。我相信我已经做到了。有人知道这叫什么,我怎么做?

    最佳答案

    为此,只需将新类添加到要使用它的类的实现文件中即可。我认为这被称为 private class 。

    假设您的类是MyClass,而改进后的数组是MyClass.m中的MyArray

    @interface MyArray
    {
    
    
    }
    @end
    
    @implementation MyArray
    
    @end
    
    
    @implementation MyClass
    
    @end
    

    在这种情况下,只有从MyClass调用时,编译器才能看到MyArray上的其他方法。

    请注意,Objective C中没有 private 的东西,可以在运行时从程序中的任何地方调用MyArray上的这些方法,只是这些方法将在编译时发出警告。

    关于objective-c - 如何创建仅在Objective-C中的一个类内使用的数据类型?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11546357/

    相关文章:

    iOS7 Xcode 5 升级导致长按崩溃应用程序

    ios - 核心数据堆栈,, 'coreDataStack'的无可见@interface声明了选择器 'defaultStack'

    iphone - 如何在不使用命令提示符的情况下在 Windows XP 中编写和运行 Objective-C 程序

    ios - 如何在iOS7中更改UISearchBar的取消按钮色调颜色

    ios - 在 objective-c 中填充一组自定义模型崩溃

    iphone - 如何检查 NSMutableArray 中的字符串是否EqualToString X?

    objective-c - 当没有泄漏时,如何向 Clang 静态分析器弄清楚?

    ios - 获取过滤值的字典键

    iphone - 将 View Controller 推送到导航 Controller 时 UI 阻塞

    xcode - 在按下 "Add"按钮之前,阵列 Controller 不会更新 TableView