EnglishРусский  

   Приложение

Реклама

Инсталлятор CreateInstall
Бесплатные и коммерческие инсталляторы

Возвращение переменных

Gentee не позволяет возвращать локальные переменные из функций и методов если они не являются числовыми типами. Все структурные локальные переменные уничтожаются при выходе из функции. Например, вызов следующей функции приведет к ошибке.

func str func1
{
   return "Result string"
}

В таких ситуациях можно использовать атрибут result. Он дает возможность возвращать результирующее значение структурного типа из функций или методов. В некоторых случаях это позволяет избежать определение и передачу лишних локальных переменных. При наличии этого атрибута Вы можете работать с переменной с именем result, которая будет возвращена при выходе из функции. У функции с атрибутом result или не должно быть команды return или может быть пустой return.

func str myfunc<result>
{
   result = "Result string"
}

func main<main>
{
   print( myfunc())
}

Следует заметить, что в действительности при вызове такой функции или метода происходит создание временной переменной в вызывающем блоке. Эта переменная передается в функцию и является там переменной с именем result.

Смотрите также

Редактировать