Форум программистов, компьютерный форум CyberForum.ru

ref - Objective-C

Восстановить пароль Регистрация
 
usuf
3 / 3 / 0
Регистрация: 21.02.2011
Сообщений: 78
20.09.2011, 16:17     ref #1
есть на С# такая штука как ref (Reference) (вот статейка http://msdn.microsoft.com/ru-ru/library/14akc2c7.aspx, если кому интерестно). Ее суть состоит в том что я могу послать ссылку на объект в параметрах функции и тогда в функции буду выполнять любые действия с объектом и после окончания функции состояние сохранится там где я ее вызвал.. может немного криво написано, но сейчас кину пример на С# и станет все понятно:
C#
1
2
3
4
5
6
7
8
9
10
11
private void MyFunc1()
{
    string text1 = "usuf";
    Console.Writeln(text1); //тут у нас покажет usuf
    MyFunc2(ref text1);
    Console.Writeln(text1); //а тут у нас покажет hello usuf
}
private void MyFunc2(ref text2)
{
    text2="hello "+text2;
}
Как такое же реализовать на objective c не могу найти, может кто стыкался и подскажет)) Заранее благодарен))

Добавлено через 59 минут
да еще молодой форум
и снова сам нашел решение, хотя и пришлось изрядно покопаться и-за "прекрасного" синтаксиса языка))
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
-(void)Func1
{
    NSString * myText = @"usuf";
    NSLog(@"%@",myText); //тут у нас покажет usuf
    [self Func2: &myText];
    NSLog(@"%@",myText); //а тут у нас покажет Hello usuf
}
    
-(void)Func2:(NSString**) text
{
    *text = [@"Hello " stringByAppendingString:*text];
}
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
20.09.2011, 16:17     ref
Посмотрите здесь:

get set и ref C#
Ошибка Cannot convert from 'ref decimal' to 'ref decimal? C#
Oracle Отчёты на ref cursor'ах
Использование ref out C#
Oracle REF Cursor с параметром
C++ IS-A, REF-A, GET-A,. наследование
C# Func<>, Action<> + ref, out
ТФКП Ref(z) и Imf(z)
C# Чем отличается ref и out
Статистика по ip и ref PHP
C# Модификаторы out и ref
Perl String to Ref

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

Или воспользуйтесь поиском по форуму:
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
Splitter
 Аватар для Splitter
201 / 143 / 5
Регистрация: 13.01.2009
Сообщений: 554
25.09.2011, 21:43     ref #2
да еще молодой форум
просто этот раздел малопопулярен, мало народа на objective-c пишет )

Могу предложить вот такое решение:
Objective-C
1
2
3
4
5
6
7
8
9
10
11
12
-(void)func1
{
    NSMutableString *myText = [NSMutableString stringWithString:@"usuf"];
    NSLog(@"============ %@",myText); //тут у нас покажет usuf
    [self func2:myText];
    NSLog(@"============ %@",myText); //а тут у нас покажет Hello usuf
}
 
-(void)func2:(NSMutableString*)text
{
    [text insertString:@"Hello " atIndex:0];
}
передается только указатель, это лучше...
usuf
3 / 3 / 0
Регистрация: 21.02.2011
Сообщений: 78
25.09.2011, 21:47  [ТС]     ref #3
спасибо за ответ, но мое решение подходит для любого типа, NSSting был только примером))
Splitter
 Аватар для Splitter
201 / 143 / 5
Регистрация: 13.01.2009
Сообщений: 554
26.09.2011, 00:58     ref #4
не за что, но думаю в большинстве случаев можно найти решение лучше чем передавать объект...
Yandex
Объявления
26.09.2011, 00:58     ref
Ответ Создать тему
Опции темы

Текущее время: 02:25. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru