Category:LSL Types/ru

From Second Life Wiki
Jump to navigation Jump to 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.