8.х вопрос о присвоении структур

Тема в разделе "Общие вопросы "1С:Предприятие 8"", создана пользователем Sunbear, 31 мар 2011.

  1. TopicStarter Overlay
    Sunbear
    Offline

    Sunbear Опытный в 1С

    Регистрация:
    11 фев 2010
    Сообщения:
    112
    Симпатии:
    0
    Баллы:
    26
    почему при присвоении структур
    а =b
    то если мы b=c
    то a тоже изменяется (a=c)
  2. TopicStarter Overlay
    Sunbear
    Offline

    Sunbear Опытный в 1С

    Регистрация:
    11 фев 2010
    Сообщения:
    112
    Симпатии:
    0
    Баллы:
    26
    Как передать только значение, а не ссылку?
  3. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    В функцию надо передавать параметр со словом "Знач":
    Код:
    Функция МояФункция(в, Знач а, с)
    //...
    КонецФункции
    
    
    Если это надо....
  4. TopicStarter Overlay
    Sunbear
    Offline

    Sunbear Опытный в 1С

    Регистрация:
    11 фев 2010
    Сообщения:
    112
    Симпатии:
    0
    Баллы:
    26
    К сожалению это не помогает, все равно меняется
  5. 1cUserAndrew
    Offline

    1cUserAndrew Профессионал в 1С Команда форума

    Регистрация:
    27 май 2010
    Сообщения:
    4.948
    Симпатии:
    149
    Баллы:
    104
    Может, я немного некорректно написал:
    Злово "Знач" пишите не в процессе вызова функции. Тут вы передаете фактические параметры:
    Код:
    МоеЧисло = МояФункция(5,4,8);
    
    
    Пишите в самой функции, которую вызываете:
    Код:
    Функция МояФункция(в, Знач а, с)
    а = с;
    Возврат а;
    КонецФункции
    
    Если не получается, то может, подробней объясните задачу, я, по правде сказать, не совсем понял, что Вам надо.
  6. Itsys
    Offline

    Itsys Опытный в 1С

    Регистрация:
    3 янв 2010
    Сообщения:
    1.394
    Симпатии:
    0
    Баллы:
    26
    А можно не такой пространный пример, а то сложно понять о чем речь...
  7. TopicStarter Overlay
    Sunbear
    Offline

    Sunbear Опытный в 1С

    Регистрация:
    11 фев 2010
    Сообщения:
    112
    Симпатии:
    0
    Баллы:
    26
    Код:
    Функция присвоить(знач б)
    а=новый структура;
    Если б<>неопределено Тогда
    
    Для каждого киз Из б Цикл
    а.Вставить(киз.ключ,киз.значение);
    КонецЦикла;     
    возврат а    
    иначе 
    возврат неопределено 
    КонецЕсли; 
    КонецФункции 
    
    написал такую функцию, теперь присваивается по значению.

Поделиться этой страницей