Создать новый экземпляр класса из другого метода экземпляра (Цель C) - PullRequest
1 голос
/ 29 октября 2011

Я (по сути) новичок в программировании и пытаюсь изучать Objective-C.Я работаю над программой преобразования единиц, которая использует экземпляр класса для хранения и преобразования единиц.Так, например, если я хочу преобразовать 1 фут в дюймы, программа сделает следующее:

  1. Создайте новый экземпляр класса Length (myLength)
  2. Сохраните значение иunit в новом экземпляре класса (myMass)
  3. Вызов метода экземпляра для преобразования значения в новые единицы

Мой класс Length работает нормально и так, как я ожидаю.

Теперь я хотел бы создать новый класс с именем Area, который создает два экземпляра класса Length и использует класс Length для выполнения преобразований.Однако, когда я пытаюсь объявить новый экземпляр моего класса Length из Area.m, я получаю предупреждение «Length undeclared».

Возможно ли создать экземпляр другого класса изнутри экземпляраметод?Более конкретно, я могу создать два экземпляра моего класса Length из метода экземпляра класса Area?

(Пожалуйста, простите меня заранее, если я испортил любую мою терминологию).

Вот фрагмент кода в Area.m, который доставляет мне неприятности:

@implementation Area

-(void) setCompound: (double) myVal unit1: (char) c1 unit2: (char) c2

{

// Create two new instances of the Length class
// THE FOLLOWING TWO LINES ARE GIVING ME TROUBLE
Length * aLength = [[Length alloc] init];  
Length * bLength = [[Length alloc] init];

[aLength setLength:myVal units: c1]; // Set the value and units of first length

[bLength setLength: 1 units: c2]; // Set the value and units of the second length

}

@end

1 Ответ

2 голосов
/ 29 октября 2011

Вам необходимо импортировать файл заголовка длины в Area.h

#import "Length.h"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...