ASP.NET – 7. lekce
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

ASP.NET – 7. lekceASP.NET – 7. lekce

 

ASP.NET – 7. lekce

Google       Google       7. 10. 2006       14 538×

O procedurách a funkcích

Reklama
Reklama

Procedura & funkce

Někdy se stane, že musíme udělat některé činnosti v programu vícekrát. Pokud bychom je psali několikrát za sebou, program by se stal nepřehledným, a v případě, že bychom něco chtěli změnit, museli bychom to udělat vícekrát, a to už bychom někde mohli udělat chybu. Za tímto účelem tu máme procedury a funkce.

Rozdíl mezi procedurami a funkcemi

Rozdíl mezi procedurami a funkcemi je malý, ale docela podstatný. Procedury nevrací žádnou hodnotu, zatímco funkce ano, což znamená, že jejich činnost skončí nějakým výsledkem.

Vytvoření procedury

C#


void jmenoProcedury{
	prikazy..

}

VB


Sub jmenoProcedury
	Prikazy..

End Sub

Je to skoro to samé, jako když vytváříte hlavní proceduru Page_Load, akorát změníte jméno procedury.

Proceduru potom v hlavní proceduře zavoláme podle jejího názvu:

Příklad

C#

void Pozdrav(){
	Response.Write(„Nazdar kamaráde!“);

}

void Page_Load(){
	Response.Write(„A nyní zavoláme naší proceduru Pozdrav():  „);
	Pozdrav();   // nyní jsme zavolali proceduru Pozdrav() => Vypíše se Nazdar kamaráde
}
VB

Sub Pozdrav
	Response.Write(„Nazdar kamaráde“)

End Sub

Sub Page_Load
	Response.Write(„A nyní zavoláme naší proceduru Pozdrav():  „);
	Pozdrav  // nyní jsme zavolali proceduru Pozdrav => Vypíše se Nazdar kamaráde
End Sub

Procedury s parametry

Většinou se stane, že činnosti, které chceme provádět uvnitř procedury, nejsou úplně stejné, ale jsou trochu rozdílné. K tomu nám slouží parametry, jimiž lze ovlivňovat chování procedury.

C#


void Pozdrav(string barvaTextu){
	Response.Write(„Nazdar kamarade!
“); } void Page_Load(){ Pozdrav(„black“); Pozdrav(„red“); Pozdrav(„blue“); Pozdrav(„green“); }

Vytvořili jsme opět proceduru pozdrav. V závorce jsme vytvořili proměnnou typu string barvaTextu a pak jsme s ní pracovali v proceduře. Při volání procedury jsme do závorky dali řetězec s názvem barvy.

To samé ve VB.NET:


Sub Pozdrav(barvaTextu As String)
	Response.Write(„Nazdar kamarade!
“) End Sub Sub Page_Load Pozdrav(„black“) Pozdrav(„red“) Pozdrav(„blue“) Pozdrav(„green“) End Sub

Samozřejmě můžete v proceduře užít více parametrů. V takovémto případě oddělujete parametry čárkou:

C#


void Pozdrav(string barvaTextu,int velikostTextu){
	Response.Write(„Nazdar kamarade!
“); } void Page_Load(){ Pozdrav(„black“,5); Pozdrav(„red“,10); Pozdrav(„blue“,1); Pozdrav(„green“,50); }

VB


Sub Pozdrav(barvaTextu As String,velikostTextu As Integer)
	Response.Write(„Nazdar kamarade!
“) End Sub Sub Page_Load Pozdrav(„black“,5) Pozdrav(„red“,10) Pozdrav(„blue“,1) Pozdrav(„green“,50) End Sub

Funkce:

Jak jsem říkal na začátku, mezi procedurami a funkcemi není skoro žadný rozdíl, proto si teď ukážeme pouze jednoduchý příklad funkce:

C#


string Odkaz(string kam,string text){
        string x;
        x = "
  • "+text+"
  • "; return x; } void Page_Load(){ Response.Write(Odkaz("www.programujte.com","e-zin programujte")+Odkaz("www.atlas.cz","atlas.cz")); Response.Write(Odkaz("www.centrum.cz","Centrum.cz")+Odkaz("www.seznam.cz","seznam")); }

    Všiměte si, že když vytváříme funkci Odkaz, už není void, ale string. To z toho důvodu, že funkce vrací hodnotu typu string. Dále je tam důležitý příkaz return, tím definujeme, kterou hodnotu vracíme. V našem případě to je proměnná x. Pokud bychom na příkaz return zapomněli, překladač by nahlásil chybu.

    VB

    
    Function Odkaz(kam As String,text As String)As String
            Dim x As String
            x = "
  • "+text+"
  • " Return x End Function Sub Page_Load Response.Write(Odkaz("www.programujte.com","e-zin programujte")+Odkaz("www.atlas.cz","atlas.cz")) Response.Write(Odkaz("www.centrum.cz","Centrum.cz")+Odkaz("www.seznam.cz","seznam")) End Sub

    Ve VB.NET se funkce vytváří pomocí klíčových slov Function a End Function. Stejně jako u C# musíme definovat typ návratové hodnoty (v našem případě string).

    To je pro dnešek vše. Příště se podíváme na objekty.

    ×Odeslání článku na tvůj Kindle

    Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
    Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

    E-mailová adresa (např. novak@kindle.com):

    TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

    3 názory  —  3 nové  
    Hlasování bylo ukončeno    
    0 hlasů
    Google
    Alan se věnuje programování webových aplikací a jazyku C++. Studuje na FEI-VŠB v Ostravě

    Nové články

    Obrázek ke článku Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

    Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

    Hackerský kongres HCPP16 pořádá od 30. září do 2. října nezisková organizace Paralelní Polis již potřetí, a to ve stejnojmenném bitcoinovém prostoru v pražských Holešovicích. Letos přiveze na třídenní konferenci přes 40 většinou zahraničních speakerů – lídrů z oblastí technologií, decentralizované ekonomiky, politických umění a aktivismu. Náměty jejich přednášek budou také hacking, kryptoměny, věda, svoboda nebo kryptoanarchie.

    Reklama
    Reklama
    Obrázek ke článku ICT PRO školení zaměřené nejenom na ICT

    ICT PRO školení zaměřené nejenom na ICT

    Dovolte, abychom se představili. Jsme zaměstnanci společnosti ICT Pro, profesionálové v oblasti poskytování komplexních ICT služeb. Neboli služeb spojených s informačními a komunikačními technologiemi, které dnes - ve 21. století - tvoří  nedílnou součást běžného provozu všech moderních firem.

    loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
    Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
    Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý