如何正确初始化作为对象的变量实例?

时间:2010-03-05 07:07:09

标签: objective-c

我是Objective C新手,我确信这是一个简单的问题,但我无法弄明白: 我有一个类声明了一个名为myDeck的实例变量,它是我创建的一个名为Deck的自定义类的一部分。现在我在我的代码中有这个:

在@interface:

Deck *myDeck;

在我的init方法中:

Deck *ourDeck = [[Deck alloc]init];
myDeck = ourDeck;

所以这似乎创建了myDeck就好了,我可以在其中粘贴值并运行它的方法一段时间,但是我遇到了它不再存在的地方,我在尝试时遇到了EXC_BAD_ACCESS错误用它。

我尝试过添加

[myDeck retain];

无济于事,它仍然在相同的位置失败。我真的不知道我应该如何分配和实现这一点,我有一种感觉我错过了什么,有人吗?

1 个答案:

答案 0 :(得分:1)

你在那里做的一切似乎都是正确的;除了我认为你的第一个例子中可能有拼写错误 - 实例变量被称为myDeck,而不是deck,对吧?如果您的对象正在消失,那是因为您多次调用releaseautorelease。 Cocoa中的内存管理非常简单。请查看documentation以获取您可能想要的所有信息。