LSL Variables/pl

From Second Life Wiki
< LSL Variables
Revision as of 04:09, 25 March 2008 by Smokkam Short (talk | contribs) (New page: {{Multi-lang}} {{LSL Header/pl}} '''Zmienna''' jest miejscem do przechowywania informacji, np. liczb lub ciągów znakowych. Zmienna ma nazwę, typ i wartość. Nazwa zmiennej zawsze za...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigation Jump to search

Zmienna jest miejscem do przechowywania informacji, np. liczb lub ciągów znakowych.

Zmienna ma nazwę, typ i wartość. Nazwa zmiennej zawsze zaczyna się od litery. Zaleca się stosowanie konwencji nazewniczej z C lub Javy. Wielkość liter ma znaczenie. X nie jest tożsame z x.

LSL jest językiem o sztywnych i statycznie deklarowanych typach zmiennych. To oznacza, że zmienna musi mieć zadeklarowany typ i może przechowywać tylko wartości swojego typu. Wyjątkiem jest zmienna typu list, która może przechowywać zero lub więcej wartości dowolnego innego typu.

Przykłady:

integer count = 2;
float measure = 1.2;
string chars = "Lee";
list words = ["To", "Jest", "Lista", "."];
list entries = ["Lista może zawierać dane różnych typów, np.:", 2, 1.2, <0.4, 0.8, 1.6>];
vector vec = <1,6,2>;

Zasięg zmiennych

The variable name is in scope from the point it first appears to the end of the scope it is in, or the end of the script for global variables. A name may not be defined twice in the same scope, but a name may be redefined in an inner scope, and it hides the same name at outer scope. Again, the semantics are very similar to C and Java. That is to say, the following code will compile and run.

integer i = 50;
default {
     state_entry() {
          string i = "Hello there!"; //This WILL compile just fine, unlike in Java.
          llOwnerSay(i); //Will say "Hello there!". There is no way to get the global variable i.
     }
}

See Also