Форум программистов, компьютерный форум, киберфорум
Наши страницы
Objective-C
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
123456789igor2
1 / 1 / 0
Регистрация: 13.09.2013
Сообщений: 23
#1

Первые "шаги" в objective c

13.09.2013, 01:08. Просмотров 1096. Ответов 5
Метки нет (Все метки)

Здравствуйте! Только начал изучение objective c и пока есть трудности с синтаксисом языка.
Хотелось бы услышать подсказки.
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
@interface City : NSObject{
  NSString * name;
  int age;
  int population;
}
-(void)setName:(NSString *) name;
-(void)setAge:(int)age;
-(void)setPopulation:(int)population;
-(NSString *)getName;
-(int)getAge;
-(int)getPopulation;
@end
@implementation City
-(void)setName:(NSString *) name2{
  name=name2;
}
@end
#import <Foundation/Foundation.h>
 
int main(int argc, const char * argv[])
{
 
  @autoreleasepool {
    City *ct = [[City alloc]init];
    [ct setName:@"asd"];
    NSLog(@"name: %@",[ct name]);
  }
    return 0;
}
1) Правильно ли описан сеттер для name? знаю, что их можно генерить автоматически, но хотелось это сделать вручную, что бы по лучше понять как все работает. В java бы написал this.name=name слышал, что в objective c альтернативой this является self, можно ли его использовать в данном примере для описания сеттера?
2) в переменной name храниться как я понимаю "asd"(поправьте если не так), а как эту переменную вывести с помощью NSLog? Мой способ не верен.
Заранее благодарен. Не ругайте сильно. Но пока сложно привыкнуть к такому синтаксису=)
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
13.09.2013, 01:08
Ответы с готовыми решениями:

Ошибка "SIGABRT" в Xcode(Objective-C)
Написал код Вот фрагмент из (ViewController.h) @interface...

Приведение типов, или как избавиться от "Warning"
Добрый день господа! Поможите привести типы в порядок, в Delphi есть чудо...

Объясните, что это: "static const uint32_t collisionCategory = 0x1 << 0"?
Встретил в одном туториале по SpriteKit следующую строчку static const uint32_t...

Не создается объект. Ошибка "autorelease called without pool for object of class"
Здравствуйте. Почему не создается объект Rect? #import...

Thread 1: Program received signal "SIGABRT"
Добрый вечер. Использую Кокос2Д. Мне надо чтобы спрайт генерировался каждые 2...

5
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
13.09.2013, 07:27 #2
Нет, не правильно. Это в общем.
Для деталей нужно знать используете ли вы ARC, например.

Цитата Сообщение от 123456789igor2 Посмотреть сообщение
знаю, что их можно генерить автоматически, но хотелось это сделать вручную
Это хорошее начинание, но для полного понимания как оно работает и как нужно все "правильно" именовать - почитайте это.
И в частности, это
Дело в том, что важно знать внутреннюю кухню, чтобы понять "почему".

P.S. Если будет сложно - начните с чтения книги, там точно есть примеры правильного написания всего и вся для начального уровня(про них много тем в этой ветке форума).
Я лишь дал ссылки на ту информацию, которая позволит понять как написать все правильно, при этом понимая что будет происходить в разных случаях(поиск, запись, чтение)
0
123456789igor2
1 / 1 / 0
Регистрация: 13.09.2013
Сообщений: 23
13.09.2013, 12:24  [ТС] #3
Спасибо! Обязательно прочту.
Хотя хотелось бы более развернутого ответа на мои вопросы, что бы я сразу понял, если думаю не в том направлении. Было бы просто замечательно если бы ответ содержал участок интересуещего меня кода, если это конечно вообще возможно=)
0
zulkis
684 / 611 / 43
Регистрация: 13.01.2011
Сообщений: 1,724
13.09.2013, 15:41 #4
Цитата Сообщение от 123456789igor2 Посмотреть сообщение
интересуещего меня кода,
Я правда не умею читать мысли на расстоянии через ник и айпи адрес.
0
123456789igor2
1 / 1 / 0
Регистрация: 13.09.2013
Сообщений: 23
13.09.2013, 18:31  [ТС] #5
я все по поводу 2ух пунктов в первом сообщении
0
mobidevelop
182 / 182 / 3
Регистрация: 10.01.2013
Сообщений: 596
13.09.2013, 19:31 #6
Невозможно. Купите/скачайте книжку. Никто тут не будет репетиторством с нуля заниматься. Звучит на первый взгляд, может, и не слишком дружелюбно, но поверьте - это ДОБРЫЙ совет. А тема про литературу поднималась тут много раз.
0
13.09.2013, 19:31
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
13.09.2013, 19:31

Работа с "вкладками" в самодельном браузере
Помогите разобраться, не могу уже понять куда копать. В общем ситуация такая,...

Игра типа "Tower Bloxx"
Задали написать игру подобную Tower Bloxx (суть игры - постройка башни из...

Хранение значения переменной "онлайн"
Всем привет! Такой вопрос - нужно, чтобы значение некоторой переменной...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
6
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2018, vBulletin Solutions, Inc.
Рейтинг@Mail.ru