Category:LSL Types/ru

From Second Life Wiki
Jump to: navigation, search

Введение

data типом является определение типа или формата данных.

Целое например, определяет, что переменная, которая будет содержать такого рода (или "тип") данных должен содержать только целые, который для 32-битных целые значения число в диапазоне 0x00000000 к 0xFFFFFFFF.

Пример

<lsl>integer myVar = 123; float myFloatVariable = 258.753; string myStringVar = "abracadabra как то раз увидела джина"; vector myVecVar = <0.159, 452.0, 0.0>;</lsl>

Передача по значению

LSL как язык использует передачу по ценности всех типов [1]. Когда значение (это может быть значение в переменной) передается в качестве параметра функции, то функция имеется только на свой ​​собственный уникальный копию значения. Так что, если в ходе выполнения функции, функция изменяет параметр, что модификация изменяет только функции копию значения, это не дает эффекта или изменения оригинала (или других копий).

  • Встроенные функции никогда не будет изменять переменные, используемые в качестве параметров.
  • Пользовательские функции, которые изменяют значения параметров внутри области видимости функции не будут иметь те изменения, внесенные в переменных, которые поставляются этих параметров.
Пример

<lsl>//Это показывает, что LSL (как язык) является передача по стоимости, если бы она была передача по ссылке, линии сказал бы по-другому. swap(string a, string b) {

   string t = a;
   a = b;
   b = t;

}

default {

   state_entry()
   {
       string a = "1";
       string b = "2";
       llOwnerSay(llList2CSV([a, b]));
       swap(a, b);//fails to mutate a or b.
       llOwnerSay(llList2CSV([a, b]));
   }

}</lsl>

Subcategories

This category has the following 3 subcategories, out of 3 total.

Pages in category "LSL Types/ru"

The following 8 pages are in this category, out of 8 total.