Sdílet prostřednictvím


Typy funkce

V zásadě existují dva typy funkcí. Funkce, která vyžaduje blok zásobníku se nazývá bloková funkce. Funkce, která nevyžaduje blok zásobníku se nazývá listová funkce.

Bloková funkce je funkce, která přiděluje prostor zásobníku, volá další funkce, ukládá stálé registry nebo používá zpracování výjimek. Vyžaduje také záznam tabulky funkcí. Bloková funkce vyžaduje prolog a epilog. Bloková funkce může dynamicky přidělit prostor zásobníku a může zaměstnat ukazatel bloku. Bloková funkce má veškeré funkce tohoto standardu volání k dispozici.

Pokud bloková funkce nevolá jinou funkci, pak není požadováno zarovnání zásobníku (odkazováno v oddílu Přidělení zásobníku).

Listová funkce je taková, která nevyžaduje záznam tabulky funkcí. Nemůže volat žádné funkce, alokovat místo nebo ukládat žádné stálé registry. Je povoleno ponechat v době spuštění zásobník nezarovnaný.

Viz také

Odkaz

Použití zásobníku