Я не понимаю, как объявить указатель, к которому можно получить доступ несколькими способами. Следующий код использует myContainer
для хранения номера, который используется при вызове useMyContainer
.
@interface MyViewController : UIViewController {
NSString *myContainer;
IBOutlet UILabel *display;
}
- (IBAction)storeToMyContainer: (UIButton *)sender;
- (IBAction)useMyContainer: (UIButton *)sender;
@end
@implementation MyViewController
- (IBAction)storeToMyContainer: (UIButton *)sender {
myContainer = sender.titleLabel.text;
}
- (IBAction)useMyContainer: (UIButton *)sender {
[someOtherClass doSomethingWith:[myContainer doubleValue]];
}
@end
Что я не понимаю, так это то, что когда я использую display
таким же образом, у меня нет проблем. Что мне нужно сделать, чтобы получить доступ к myContainer
в useMyContainer
таким образом?
Некоторые мысли: я знаю, что это проблема управления памятью, и я почти уверен, что на дисплее вызывается retain
(вероятно, из-за файла .xib?), И именно поэтому display
висит достаточно долго для использования в обоих методах.
Я знаю обходной путь, который включает использование double и int, но я считаю, что это грязно, и, поскольку я беру урок по этому вопросу, я хочу знать, как справиться с этим.
Спасибо за вашу помощь!