Deklarace (programování): Porovnání verzí
Smazaný obsah Přidaný obsah
Narovnání přesměrování Ruby (programovací jazyk) |
značka: editor wikitextu 2017 |
||
Řádek 6:
| title = 2.5. Declaration of variables
| quote = [A] declaration [...] introduces just the name and type of something but allocates no storage[...].
| url = http://publications.gbdirect.co.uk/c_book/chapter2/variable_declaration.html
}}</ref> == Deklarace ==
Řádek 63 ⟶ 64:
== Proměnné ==
V některých programovacích jazycích jsou implicitní deklarace vytvořeny při překladu, až když se s nimi překladač poprvé setká. V jiných jazycích je takový postup považovaný za fatální a během diagnostiky je zahlášena chyba. Některé jazyky původně používaly implicitní deklaraci proměnných, ale během jejich vývoje
Příklady jak různé programovací jazyky reagují na nedefinované proměnné. Pod každou částí kódu je napsáno chybové hlášení (pokud nějaké vznikne):
Řádek 72:
(setf y x)
</syntaxhighlight>
*** - EVAL: variable X has no value
[[Csharp|C#]] ([[.NET Framework]])
Řádek 83 ⟶ 82:
}
</syntaxhighlight>
Undefined variable x
[[C (programovací jazyk)|C]] (GNU [[GNU Compiler Collection|GCC]] 3.4)
Řádek 95 ⟶ 93:
}
</syntaxhighlight>
foo.c: In function `main':
foo.c:2: error: `x' undeclared (first use in this function)
foo.c:2: error: (Each undeclared identifier is reported only once
foo.c:2: error: for each function it appears in.)
[[JavaScript]] (Mozilla [[Firefox]] 1.0)
Řádek 106 ⟶ 103:
y = x
</syntaxhighlight>
Error: x is not defined
Source File: file:///c:/temp/foo.js
[[Standard ML]] (Standard ML of New Jersey v110.55)
<syntaxhighlight>
val y = x;
</syntaxhighlight>
stdIn:1.9 Error: unbound variable or constructor: x
[[MUMPS]] (Caché)
<syntaxhighlight>
Set Y = X
</syntaxhighlight>
<UNDEF>
[[MUMPS]] (GT.M)
<syntaxhighlight>
Set Y=X
</syntaxhighlight>
%GTM-E-UNDEF, Undefined local variable: X
[[OCaml]] 3.08
Řádek 139 ⟶ 132:
let y = x;;
</syntaxhighlight>
Unbound value x
[[Perl]] 5.8
Řádek 147 ⟶ 139:
my $y = $x;
</syntaxhighlight>
<syntaxhighlight lang="Perl">
Řádek 155 ⟶ 146:
my $y = $x;
</syntaxhighlight>
Global symbol "$x" requires explicit package name at foo.pl line 2.
Execution of foo.pl aborted due to compilation errors.
[[PHP]] 5
Řádek 164 ⟶ 154:
$y = $x;
</syntaxhighlight>
(žádná chyba)
<syntaxhighlight lang="php">
Řádek 172 ⟶ 160:
$y = $x;
</syntaxhighlight>
PHP Notice: Undefined variable: x in foo.php on line 3▼
▲ PHP Notice: Undefined variable: x in foo.php on line 3
[[Python]] 2.4▼
<syntaxhighlight lang="Python">
x = y
</syntaxhighlight>
Traceback (most recent call last):
File "foo.py", line 1, in ?
x = y
NameError: name 'y' is not defined
[[Ruby|Ruby]] 1.8
Řádek 191 ⟶ 177:
y = x
</syntaxhighlight>
NameError: undefined local variable or method `x' for main:Object
from (irb):1
[[VBScript]] (WSH 5.6)
Řádek 201 ⟶ 186:
y = x
</syntaxhighlight>
(žádná chyba)
<syntaxhighlight lang="VB">
Řádek 211 ⟶ 195:
y = x
</syntaxhighlight>
(3, 1) Microsoft VBScript runtime error: Variable is undefined: 'x'
== Odkazy ==
|