【问题标题】:How are classes instances handled through views?如何通过视图处理类实例?
【发布时间】:2011-12-23 06:45:48
【问题描述】:

我对 iOS 编程真的很陌生。尽管我阅读了很多书籍和资料,但我无法真正找到一个简单问题的答案。

我了解 C++ 语言,并且了解如何通过函数处理变量。在iOS编程中我真正不明白的是这件事是怎么做的。

例如,在 C++ 中,我在主函数中创建了一个类实例。当我调用另一个函数并且我想共享这个类实例时,你需要做的就是:

myFunction(&myClassInstance);

当我在 iOS 编程(以及类)中切换视图时,我不知道如何发送之前创建的类实例。例如,如果我在我的程序的 firstView 上,并且我切换到 secondView,我如何发送我当前正在使用的变量?

如果我需要创建一个将通过所有程序使用的类的实例,我应该在哪里创建它?在 C++ 中我会在 main 函数中创建它,在 iOS 编程中,我应该在哪里创建它?

谢谢!

【问题讨论】:

  • 创建“secondView”实例时,在其中设置属性以传递数据。
  • 对于您的最后一个问题,在您的应用委托中创建全局对象,然后将指针设置到应用委托中的字段或使用“单例”。

标签: objective-c ios oop


【解决方案1】:

首先我从你的问题中了解到的是 “在 C++ 中,当我们必须传递某个其他类的实例时,我们使用引用参数。Objective C 中的选项是什么?”

所以,Objective C 是建立在 C 之上的。所以你可以使用指针传递实例。喜欢...

-(void)myFunction:(MyClass*)myClassInstance;

另一个问题是 “如果我在所有程序中都需要一些实例,那么我应该在哪里创建?”

您可以使用 AppDelegate 类来保存该实例。因为 AppDelegate 的实例可以从您的所有程序中访问。 您可以在“didFinishLaunchingWithOption”中创建实例

【讨论】:

    猜你喜欢
    • 2021-09-09
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多