С Новым годом! Форум программистов, компьютерный форум, киберфорум
Наши страницы

Objective-C

Войти
Регистрация
Восстановить пароль
 
Пан_Атаман
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 34
#1

Создание объекта - Objective-C

20.02.2014, 00:03. Просмотров 822. Ответов 5
Метки нет (Все метки)

Всем доброго вечера, подскажите:

Objective-C
1
2
 NSTimeZone *timeZone = [[NSTimeZone alloc]init];
timeZone = [NSTimeZone systemTimeZone];
Это одно и тоже? Либо я всё правильно сделал:

1. Создал объект класса NSTimeZone
Objective-C
1
NSTimeZone *timeZone = [[NSTimeZone alloc]init];
2. Отправил сообщение (systemTimeZone) объекту timeZone
Objective-C
1
timeZone = [NSTimeZone systemTimeZone];
Примечание: метод systemTimeZone работет только с классами

Добавлено через 12 минут
Вот полный код написанной мной программы. Программа работет без ошибок.

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
// Программа проверяет действует ли летнее время
 
#import <Foundation/foundation.h>
 
 
int main ()
{
    @autoreleasepool
    {
        NSTimeZone *timeZone = [[NSTimeZone alloc]init];
        timeZone = [NSTimeZone systemTimeZone];
        BOOL sysTime = [timeZone isDaylightSavingTime]; //BOOL используется в описании метода
        if (sysTime==true)
        {
            NSLog(@"\nДа!Летнее время установлено!\n");
        }
        else
        {
             NSLog(@"\nНЕТ!Летнее время НЕ установлено!\n");
        }
        
        
    }
 
}
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.02.2014, 00:03
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Создание объекта (Objective-C):

Создание объекта в цикле - Objective-C
Здравствуйте. Я пишу небольшую карточную программу и у меня возникли небольшие трудности по поводу создания объекта в цикле. Я почти...

Вращение объекта - Программирование iOS
Здравствуйте. Есть объет(палка), который должен вращаться относительно своего центра с помощью акселерометра, т.е. палка должна всегда...

Вызов объекта в keyDown - Objective-C
являясь новичком в обжекте встал в ступор в ситуации, когда у меня есть класс, в нем инициализируется объект и в нем же оверрайдится...

Перемещение объекта пальцем - Программирование iOS
Подскажите как при помощи среды разработки xcode с использованием cocos2d реализовать перемещение спрайта по экрану при помощи тачскрина по...

Создание объекта в функции и возврат объекта из нее - C++
Не могу разобраться с ссылками. Возможно ли вернуть из функции объект созданный в стеке при этом копи конструктор публичный. ...

Создание COM-объекта - VBA
Доброго времени суток, пожалуйста, объясните мне, как создать COM-объект в VBA. Или только VB для этого годится. Хотя бы какую-то...

5
zulkis
683 / 610 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
20.02.2014, 06:32 #2
Objective-C
1
timeZone = [NSTimeZone systemTimeZone];
Вы создали еще один объект и присвоили его в указатель timeZone.
C
1
sysTime==true
Так не проверяют, проверяют так:
Objective-C
1
if (sysTime)
Также, в objective-c стоит использовать YES вместо true.

Цитата Сообщение от Пан_Атаман Посмотреть сообщение
2. Отправил сообщение (systemTimeZone) объекту timeZone
Вы отправили сообщение классу NSTimeZone.
0
Пан_Атаман
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 34
20.02.2014, 09:40  [ТС] #3
так получается это одно и тоже?
Objective-C
1
2
NSTimeZone *timeZone = [[NSTimeZone alloc]init];
timeZone = [NSTimeZone systemTimeZone];
есть ли смысл тогда писать
Objective-C
1
NSTimeZone *timeZone = [[NSTimeZone alloc]init];
или просто писать
Objective-C
1
 NSTimeZone *timeZone = [NSTimeZone systemTimeZone];
0
zulkis
683 / 610 / 38
Регистрация: 13.01.2011
Сообщений: 1,724
20.02.2014, 09:57 #4
Цитата Сообщение от Пан_Атаман Посмотреть сообщение
NSTimeZone *timeZone = [[NSTimeZone alloc]init];
Вы создадите экземпляр NSTimeZone. Я не могу сказать точно, что там внутри будет. Вполне возможно что для Гринвича. Это лучше документацию почитать.
Цитата Сообщение от Пан_Атаман Посмотреть сообщение
NSTimeZone *timeZone = [NSTimeZone systemTimeZone];
А здесь вы конкретно запрашиваете системные установки.
0
Пан_Атаман
0 / 0 / 0
Регистрация: 12.02.2014
Сообщений: 34
20.02.2014, 12:39  [ТС] #5
Хорошо по другому вопрос задам

При такой форме записи
Objective-C
1
NSTimeZone *timeZone = [NSTimeZone systemTimeZone];
мне нужно инициализировать дополнительно объект?:
Objective-C
1
NSTimeZone *timeZone = [[NSTimeZone alloc]init]; //инициализировать таким образом
0
korvin_
1940 / 1425 / 226
Регистрация: 28.04.2012
Сообщений: 5,097
20.02.2014, 12:48 #6
Цитата Сообщение от Пан_Атаман Посмотреть сообщение
Хорошо по другому вопрос задам
Цитата Сообщение от zulkis Посмотреть сообщение
Это лучше документацию почитать.
В т.ч. и по alloc/init.
0
20.02.2014, 12:48
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.02.2014, 12:48
Привет! Вот еще темы с ответами:

Создание объекта - C#
Господа, скажите пожалуйста, вот я делаю например, два класса, один с Main() другой без. В том который без, я создаю объект. Но когда я...

Создание объекта - Delphi
Вот начал делать ООП в делфи хотел обявить сделать обєк но выдает ошибку unit Unit1; interface uses Windows, Messages,...

Создание объекта - Java
Написал простую программу, но почему-то не компилируется, в чем проблема? import java.sql.Date; import java.util.Arrays; import...

Создание COM объекта - C++ COM
Доброго времени суток! Есть программа на С++, использующая dll для чтения данных с порта RS232, эту программу надо прикрутить к другой...


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

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

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