1. Пользоваться форумом на планшетах и телефонах стало удобнее благодаря Tapatalk

определение новой функции типа string и вопрос по "склейке" строк

Тема в разделе "Maya", создана пользователем moris 25600, 11 июн 2009.

Модераторы: Dark™, Skif
  1. moris 25600

    moris 25600 Активный участник

    С нами с:
    13.10.2006
    Сообщения:
    93
    Симпатии:
    0
    Баллы:
    7
    хочу определить новую функцию типа , которая принимала бы в качестве аргументов выделенные обьекты (или в функцию просто всовывать строки вручную, типа TestPrint("obj", "cube.snap_to", "cube")

    global proc string TestPrint(string $objMass[])
    {
    print $objMass;
    return;
    }

    Но я не уверен, что это правильно, т.к. выдает ошибку. Как это правильно долно выглядеть? А еще, как я понял, функция может принимать только одного типа данные, так? И еще вопрос - как правильнее всего и в каких случаях можно клеить строки? Например:

    string $MyStr[]={"Hello", "Good morning", "Good by"}
    string $w="World";

    //Обявил я один массив с кучей строк и одну строковую переменную, но хочу сделать вот так: из массива взять слово "Hello" к нему добавить $w, затем снова из
    //массива беру слово "Good by" и к нему приплюсовую строку от балды, например "My friend". Как это будет выглядеть?

    print $MyStr[0] + $w + $MyStr[2] + "My friend";
     
  2. Dark™ vip

    Dark™ Administrator Команда форума

    С нами с:
    28.10.2001
    Сообщения:
    3.110
    Симпатии:
    217
    Баллы:
    1.520
    Код:
    global proc TestPrint(string $objMass[])
    {
    print $objMass;
    } 
    
    Если перед именем функции стоит тип string, то она должна возвращать значение именно этого типа.
    Так же при вызове надо писать по-другому.
    Код:
    TestPrint({"obj", "cube.snap_to", "cube"})
    
    Через запятую можно объявить несколько аргументов разного типа.
    Ниже ответ себе разве не дали?
    Если вопрос стоял в объединении строк в 1-у строковую переменную, то надо воспользоваться функцией stringArrayCatenate.

    P.S. По МЕЛу есть достаточно книг и источников. Начните с них.
     
  3. moris 25600

    moris 25600 Активный участник

    С нами с:
    13.10.2006
    Сообщения:
    93
    Симпатии:
    0
    Баллы:
    7
    В том то и дело, что это не ответ был мой, а предположение. Если бы я знал ответ, то и не писал. А это мое предположение, как должен выглядеть код, потому как этот код не выполняется, выдает ошибку

    а вот мой вопрос и заключался в том, чтобы узнать ответ как именно "по-другому" надо писать при вызове.
     
  4. Dark™ vip

    Dark™ Administrator Команда форума

    С нами с:
    28.10.2001
    Сообщения:
    3.110
    Симпатии:
    217
    Баллы:
    1.520
    Я написал как надо

    Да и в принте надо скобки поставить.
     
Модераторы: Dark™, Skif

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