Slovník | Vyhledávání | Mapa webu
 
Základy informatiky pro biologyVýpočetní matematické systémy Jak pracovat s MATLABem Programování v MATLABu Lokální a globální proměnné

Logo Matematická biologie

Lokální a globální proměnné

Všechny proměnné definované v MATLABu jsou implicitně považovány za lokální, tj. nejsou známy mimo aktivní prostředí, kterým může být volaná funkce nebo pracovní okno s příkazovým řádkem. Tedy pokud jsme v pracovním okně definovali na příkazovém řádku proměnnou x, pak ve volané funkci bude tato proměnná neznámá. Pokud si uvnitř funkce definujeme také proměnnou x nebo tak bude označen vstupní, případně výstupní parametr, nebude to mít žádný vliv na proměnnou x definovanou v příkazovém řádku. Naopak jakékoliv proměnné definované během práce nějaké funkce nejsou známy mimo tuto funkci.

Výjimku tvoří dávkové soubory, ve kterých jsou známé proměnné definované v prostředí, odkud byly zavolány. Naopak pokud v dávce nějaké proměnné definujeme, jsou pak známé i po jejím ukončení.
Mějme soubor davka1.m obsahující příkazy

[P1, o1] = trojuh(3, 4, 5);
[P2, o2] = trojuh(7, 8, 9);

Po zadání příkazu davka1 z příkazové řádky jsou definovány proměnné P1, o1, P2, o2 obsahující spočtené hodnoty. Podobně bychom mohli tyto hodnoty použít v nějaké funkci, která by obsahovala příkaz davka1.

V případě, že potřebujeme použít nějakou proměnnou definovanou v příkazové řádce i v nějaké funkci, musíme ji deklarovat jak globální pomocí příkazu global, a to jak v příkazové řádce tak v těle funkce. Tato deklarace by se měla použít před přiřazením hodnoty této proměnné.

 
vytvořil Institut biostatistiky a analýz Lékařské fakulty Masarykovy univerzity