ZaΦßteΦnφk

PokroΦil²

Profesionßl

┌vod do sv∞ta .NET /7. dφl

Modernφ technologie v²voje softwaru

 

Budete pot°ebovat p°ibli₧n∞ 95 minut

OperaΦnφ systΘm pou₧it² v p°φsp∞vku: Windows 2000

V²vojovΘ nßstroje: Visual Basic .NET

 

 

Vß₧enφ programßto°i,

 

nabφdka ΦervencovΘho dφlu serißlu bude vskutku bohatß. Nejprve se podφvßme na n∞kterß pravidla, kterΘ byste m∞li dodr₧ovat p°i pojmenovßvßnφ prom∞nn²ch jak hodnotov²ch, tak i referenΦnφch datov²ch typ∙. Dßle vzpomeneme vyu₧itφ komentß°∙ a jejich smysl p°i dokumentaci zdrojovΘho k≤du. Ve finßle se m∙₧ete t∞Üit na vysv∞tlenφ pojm∙ funkce, argument a parametr. Rovn∞₧ dojde i na oz°ejm∞nφ dvou zßkladnφch zp∙sob∙ p°edßvßnφ argument∙. P°φjemnΘ poΦtenφ.

 

Obsah

Zßsady pro pojmenovßvßnφ prom∞nn²ch

Komentß°e a jejich smysl v procesu dokumentace zdrojovΘho k≤du

Jak zm∞nit standardnφ barvu komentß°∙

Charakteristika pojmu funkce

Deklarace funkce ve VB .NET

Charakteristika pojm∙ argument a parametr

Charakteristika zp∙sobu p°edßvßnφ argument∙

Praktickß ukßzka pou₧itφ funkce

 

 

Zßsady pro pojmenovßvßnφ prom∞nn²chá

 

I kdy₧ by se mohlo na prvnφ pohled zdßt, ₧e problematika sprßvnΘho pojmenovßnφ prom∞nn²ch je, ve srovnßnφ s jin²mi programßtorsk²mi oblastmi, pon∞kud mΘn∞cennß, nenφ tomu tak. Dokonce lze °φci, ₧e pokud programßtor ovlßdne ty sprßvnΘ nßvyky v urΦovßnφ nßzvoslovφ prom∞nn²ch, zφskß nejenom znaΦn² p°ehled o situaci ve svΘm zdrojovΘm k≤du, ale bude rovn∞₧ dostateΦn∞ p°ipraven pro profesionßlnφ prßci v programßtorskΘm t²mu.

 

Na zaΦßtek si uve∩me n∞kolik ädobr²ch radô, kterΘ m∙₧ete p°i pojmenovßvßnφ prom∞nn²ch vhodn∞ vyu₧φt.

 

  1. JmΘno prom∞nnΘ nesmφ zaΦφnat Φφslicφ, proto₧e Visual Basic .NET tuto skuteΦnost p°φmo zakazuje. Mimochodem, podobnΘ pravidlo zastßvajφ takΘ jinΘ programovacφ jazyky. Na druhΘ stran∞ t°eba p°ipomenout, ₧e i kdy₧ se Φφslice nem∙₧e nachßzet na samΘm poΦßtku jmΘna prom∞nnΘ, na jinΘ pozici v nßzvu nenφ jejφ p°φtomnost zakßzßna.

 

P°φklady:

 

ááááááá Dim 123Objednßvka as Short

ááááááá 'nepovolenΘ pojmenovßnφ prom∞nnΘ

 

ááááááá Dim Objednßvka123 As Short

á 'p°φpustnΘ pojmenovßnφ prom∞nnΘ

 

  1. JmΘnem prom∞nnΘ nesmφ b²t ₧ßdnΘ klφΦovΘ slovo Visual Basicu .NET. I kdyby deklarace takovΘto prom∞nnΘ prob∞hla bez problΘm∙, zßhy po spuÜt∞nφ programu byste obdr₧eli nesprßvnΘ v²sledky a dalÜφ chyby.

 

  1. JmΘno prom∞nnΘ m∙₧e zaΦφnat pφsmenem (mal²m nebo velk²m) a takΘ znakem podtr₧enφ (_).

 

P°φklady:

 

ááááááá Dim Nßzev As String

ááááááá Dim v²poΦet As Double

ááááááá Dim _Prom∞nnß As Integer

 

  1. JmΘno prom∞nnΘ by m∞lo b²t co mo₧nß nejv²sti₧n∞jÜφ a rovn∞₧ tak i nejkratÜφ. V₧dy se sna₧te p°i°adit prom∞nnΘ nßzev, kter² tvo°φ co nejmΘn∞ znak∙, resp. volte v₧dy nejkratÜφ kombinaci znak∙ a Φφslic. I kdy₧ ve skuteΦnosti VB .NET nijak nestanovuje maximßlnφ dΘlku prom∞nnΘ, zkuste se vyhnout nßzv∙m delÜφm ne₧li 32 znak∙.

 

  1. P°i studiu cizφho programovΘho k≤du se m∙₧ete st°etnout s n∞kolika zp∙soby pojmenovßvßnφ prom∞nn²ch. Pom∞rn∞ Φasto je nßzev prom∞nnΘ slo₧en ze dvou (nebo i vφce) slov, z kter²ch ka₧dΘ zaΦφnß velk²m pφsmenem abecedy:

 

ááááááá Dim PoΦetV²robk∙ As Integer

ááááááá Dim KoeficientInflace As Single

 

áááááááá Druhß varianta spoΦφvß v ΦastΘm pou₧itφ znaku podtr₧enφ (_):

áááááááá

áááááááá

ááááááá Dim Obsah_kruhu As Integer

ááááááá 'nebo takΘ

ááááááá Dim Obsah_Kruhu As Integerá

áááááááá

OvÜem vezm∞te prosφm v potaz, ₧e z poslednφch dvou p°φklad∙ pojmenovßnφ prom∞nnΘ m∙₧e b²t v jednΘ lokßlnφ oblasti (procedu°e, funkci, metod∞) pou₧it jenom jeden z nich. Proto₧e VB .NET nepat°φ mezi programovacφ jazyky, kterΘ by rozliÜovali malß a velkß pφsmena, pova₧oval by deklaraci druhΘ prom∞nnΘ za chybnou (jde o chybu tzv. duplicitnφ deklarace prom∞nnΘ). á

 

  1. Ve sv∞t∞ programovßnφ byla otßzka vhodnΘho pojmenovßnφ prom∞nn²ch v₧dy p°edm∞tem zßjmu mnoha v∞dc∙ a odbornφk∙. Jednφm z pr∙kopnφk∙ byl takΘ AmeriΦan ma∩arskΘho p∙vodu Charles Simonyi, kter² vytvo°il takzvanou ma∩arskou notaci. Hlavnφ smysl tΘto notace tkvφ v p°idßnφ specißlnφho prefixu p°ed jmΘnu prom∞nnΘ. JednoduÜe, p°ed jmΘno ka₧dΘ prom∞nnΘ byla umφst∞na p°edpona, kterß identifikovala datov² typ tΘ-kterΘ prom∞nnΘ. Uka₧me si p°φklady:

 

ááááááá Dim intDeterminant As Integer

ááááááá Dim strSlogan As String

 

Prefix b²val zvyΦejn∞ t°φpφsmenn² a spolehliv∞ charakterizoval p°φsluÜnost prom∞nnΘ k vybranΘmu datovΘmu typu. V uveden²ch p°φkladech prefix int °φkß, ₧e prom∞nnß je datovΘho typu Integer a p°edpona str zase identifikuje prom∞nnou datovΘho typu String.áá

 

Ma∩arskß notace byla velice populßrnφ p°edevÜφm p°i programovßnφ v jazycφch C a C++, pozd∞ji se ovÜem takΘ dostala i do prost°edφ Visual Basicu. Mnoho programßtor∙ se s nφ s₧ilo natolik, ₧e ji pou₧φvajφ dodnes.

áá

  1. Nakonec jsem si nechal jedno starΘ, ovÜem lΘty prov∞°enΘ pravidlo: V podstat∞ nezßle₧φ na tom, jak² zp∙sob pojmenovßvßnφ prom∞nn²ch si vyberete. D∙le₧itΘ je, abyste vybran² styl pojmenovßvßnφ prom∞nn²ch pov²Üili na standard, kter² budete v ka₧dΘm p°φpad∞ dodr₧ovat.

 

 

Komentß°e a jejich smysl v procesu dokumentace zdrojovΘho k≤du

 

Visual Basic .NET poskytuje programßtor∙m ji₧ hodn∞ dlouho mo₧nost za°adit do k≤du takΘ °ßdky ryze informaΦnφho charakteru, kter²m se °φkß komentß°e. Ve v²pisech programov²ch k≤d∙ jsem u₧ komentß°e n∞kdy pou₧φval, tak₧e jste se s nimi ji₧ mohli st°etnout. Komentß° m∙₧ete do vaÜeho k≤du za°adit velmi jednoduÜe:

 

  1. Vlo₧te do k≤du znak apostrofu (æ) a zapiÜte informaΦnφ text:

 

ááááááá Dim CenaV²robku As Single

ááááááá 'Prßv∞ byla deklarovßna prom∞nnß datovΘho typu Single.

 

VÜe, co se objevφ za znakem apostrofu pova₧uje VB .NET za komentß°. Komentß° poznßte lehce podle jeho zelenΘ barvy.

 

InformaΦnφ text komentß°e m∙₧e b²t uveden nejen znakem apostrofu, ale takΘ textov²m °et∞zcem REM. Ve chvφlφch, kdy nebudete chtφt hledat sprßvnou klßvesu pro vlo₧enφ apostrofu, vßm mo₧nß zapsßnφ formulky REM uÜet°φ drahocenn² Φas.

 

Pokud by vßm standardnφ barva komentß°e nevyhovovala, m∙₧ete ji zm∞nit. Vφce informacφ si m∙₧ete p°eΦφst v kapitole Jak zm∞nit standardnφ barvu komentß°∙.áá

 

P°i prßci s komentß°i si musφte pamatovat, ₧e systΘm komentß°∙ je zalo₧en na °ßdkovΘm schΘmatu. To znamenß, ₧e po vlo₧enφ apostrofu je cel² °ßdek vyhrazen jenom pro komentß°. Kdy₧ do takovΘho °ßdku vlo₧φte programov² k≤d, tento nebude proveden, proto₧e Visual Basic .NET bude p°epoklßdat, ₧e jde o komentß°. Komentß° se samoz°ejm∞ m∙₧e rozklßdat takΘ na vφce °ßdcφch. V tomto p°φpad∞ se ale musφ na zaΦßtku ka₧dΘho °ßdku nachßzet znak apostrofu. Podφvejte se na nßsledujφcφ ukßzku:

 

ááááááá MessageBox.Show("Tento text se zobrazφ v okn∞ se zprßvou.")

ááááááá 'Metoda Show

ááááááá 't°φdy MessageBox

ááááááá 'zabezpeΦφ zobrazenφ okna se zprßvou. á

 

Velmi d∙le₧itß je skuteΦnost, ₧e p°i kompilaci zdrojovΘho k≤du aplikace komentß°e zbyteΦn∞ nezdr₧ujφ prßci p°ekladaΦe, nakolik tento je ignoruje. Nenφ tedy pravdou tvrzenφ, ₧e Φφm vφc komentß°∙ v k≤du pou₧φvßte, tφm je vßÜ k≤d provßd∞n pomaleji.

 

Implementace komentß°∙ do programovΘho k≤du vaÜφ aplikace je velmi d∙le₧itß. Pokud budete schopni vhodnou formou dokumentovat Φinnost vaÜeho k≤du, vytvo°φte si pevnou zßkladnu pro pozd∞jÜφ modifikaci a rozÜi°ovßnφ funkΦnosti aplikace. P°itom bude dobrΘ, kdy₧ budete komentovat jak jednoduchΘ sekvence, tak i slo₧itΘ vno°enΘ partie programovΘho k≤du. ┌silφ, kterΘ vynalo₧φte na tvorbu komentß°∙, se vßm vrßtφ i s pomysln²mi ·roky ve chvφli, kdy₧ se k p°edm∞tnΘmu k≤du vrßtφte po p∙lroce, nebo i delÜφ dob∞.

 

ZnaΦnΘ mno₧stvφ programßtor∙ zaΦßteΦnφk∙ propadß dojmu, ₧e k≤du, kter² napφÜou dnes, budou rozum∞t kdykoliv. Kdy₧ se tito programßto°i po delÜφ dob∞ vrßtφ k vlastnφmu zdrojovΘmu k≤du, jenom s hr∙zou budou nahlφ₧et na komplikovanΘ programovacφ konstrukce, na pochopenφ kter²ch budou pot°ebovat dodateΦn² Φas. Kdyby ovÜem sv∙j k≤d peΦliv∞ dokumentovali, tento dodateΦn² Φas mohli vyu₧φt daleko smyslupln∞ji.á á

 

V²znam komentß°∙ jeÜt∞ vzr∙stß p°i studiu cizφho zdrojovΘho k≤du. V∞°te, ₧e p°ijφt na to, jak myslel jin² programßtor p°i psanφ tΘ-kterΘ funkce Φi procedury, je n∞kdy podstatn∞ t∞₧Üφ, jako napsßnφ svΘ vlastnφ procedury nebo funkce.

 

Pokud vyvφjφte u₧ivatelsk² ovlßdacφ prvek nebo komponentu, kterou pak poskytnete jin²m v²vojß°∙m bezplatn∞, nebo ji budete nabφzet na trhu softwarov²ch souΦßstφ, m∞li byste dokumentaΦnφ systΘm rozÜφ°it o kompletnφ elektronickou dokumentaci ve form∞ nßpov∞dy. V p°φpad∞ ovlßdacφho prvku by nßpov∞da m∞la obsahovat popis vÜech t°φd (bßzov²ch i abstraktnφch), rozhranφ, metod a vlastnostφ.

 

Nßvrh ovlßdacφch prvk∙ by m∞l vyhovovat zßkladnφm princip∙m objektov∞ orientovanΘho programovßnφ (OOP). Jednφm z t∞chto princip∙ je takzvanΘ zapouzd°enφ (encapsulation). Zapouzd°enφ °φkß, ₧e klientsk² k≤d by m∞l s ovlßdacφm prvkem komunikovat jenom prost°ednictvφm jeho rozhranφ (tedy volßnφm p°φsluÜn²ch metod a vyu₧φvßnφm vstav∞n²ch vlastnostφ). SamotnΘ jßdro implementace ovlßdacφho prvku by ale nikdy nem∞lo b²t p°φstupnΘ klientskΘ aplikaci. Z tohoto d∙vodu se cizφ programßtor nikdy nedostane ke komentß°∙m zdrojovΘho k≤du ovlßdacφho prvku. á

 

áá

Jak zm∞nit standardnφ barvu komentß°∙

 

Nejste-li spokojeni se zelenou barvou komentß°∙, p°ipravil jsem pro vßs postup, jak tuto barvu modifikovat a zm∞nit podle vaÜich po₧adavk∙. Postupujte podle nßsledujφcφch instrukcφ:

 

  1. Vyberte nabφdku Tools a klepn∞te na polo₧ku Options.
  2. V objevivÜφm se dialogovΘm okn∞ klepn∞te na slo₧ku Environment a vyberte polo₧ku Fonts and Colors.
  3. V seznamu Display items vyhledejte polo₧ku Comment.
  4. Z otevφracφho seznamu Item foreground vyberte barvu pro komentß°e.

 

Jestli₧e vßs ani nabφdka barev otevφracφho seznamu Item foreground nepot∞Üila, klepn∞te na tlaΦφtko Custom a vyberte si vlastnφ barvu z barevnΘho spektra RGB.

 

 

Charakteristika pojmu funkce

 

V∞°φm, ₧e funkcφm p°ijdete rychle na chu¥, proto₧e pod pojmem funkce si m∙₧ete p°edstavit metodu, kterß vracφ jistou hodnotu. Prßv∞ schopnost vracet hodnotu d∞lß z obyΦejnΘ metody pravou a nefalÜovanou funkci. Hodnota, kterou funkce vracφ, se naz²vß nßvratovß hodnota funkce. Hlavnφ rozdφl mezi metodou a funkcφ je nßsledujφcφ:

 

 

 

Obr. 1 û ╚innost prßce metody

á

 

 

Obr. 2 û ╚innost prßce funkce

 

 

Deklarace funkce ve VB .NET

 

Nejd°φve se podφvejme na ukßzkovou deklaraci funkce, a potΘ si povφme, z Φeho se deklaraΦnφ p°φkaz funkce sklßdß:

 

ááá Public Function Moje_Funkce(ByVal Φφslo As Short) As Integer

 

ááááááá Dim Druhß_Mocnina As Integer

ááááááá Druhß_Mocnina = Φφslo * Φφslo

ááááááá Return Druhß_Mocnina

 

ááá End Function

 

DeklaraΦnφ p°φkaz pro vytvo°enφ funkce poz∙stßvß z t∞chto hlavnφch souΦßstφ:

 

Modifikßtor p°φstupu urΦuje ·rove≥, na kterΘ bude funkce p°φstupnß. Jin²mi slovy, pomocφ modifikßtoru p°φstupu m∙₧ete urΦit, zdali bude funkce ve°ejnß (Public), a tak p°φstupnß z celΘho projektu, nebo naopak soukromß (Private). Soukromß funkce je p°φstupnß pouze v rßmci vyÜÜφho programovΘho bloku, v kterΘm je deklarovßna (tφmto blokem m∙₧e b²t nap°φklad t°φda). Krom∞ modifikßtor∙ Public a Private existujφ jeÜt∞ dalÜφ (Protected, Friend a Protected Friend), ovÜem t∞mi se v tΘto chvφli nebudeme zab²vat.

 

Tento p°φkaz musφ nßsledovat ihned za specifikacφ modifikßtoru p°φstupu. P°φkaz °φkß Visual Basicu, ₧e budete chtφt vytvo°it funkci. Prot∞jÜkem p°φkazu Function je p°φkaz End Function. Tyto dva p°φkazy ohraniΦujφ takzvanΘ t∞lo funkce. T∞lem funkce se proto rozumφ vÜechny °ßdky programovΘho k≤du, kterΘ se nachßzejφ mezi p°φkazy Function a End Function.á

 

Nßzev funkce p°edstavuje u₧ivatelsky p°φv∞tivΘ pojmenovßnφ funkce (v naÜem p°φpade je nßzvem funkce °et∞zec Moje_Funkce). Zvolen² nßzev funkce budete pou₧φvat v₧dy, kdy₧ budete chtφt funkci zavolat.

 

Pod pojmem signatura funkce se rozumφ seznam parametr∙ funkce, kter² je umφst∞n v kulat²ch zßvorkßch. Jestli₧e signatura funkce obsahuje vφc jak jeden parametr, jsou parametry od sebe odd∞leny Φßrkami. Signatura funkce nemusφ takΘ obsahovat ₧ßdn² parametr, ovÜem i v tomto p°φpad∞ je pou₧itφ kulat²ch zßvorek povinnΘ. V naÜem p°φklad∞ tvo°φ signaturu funkce jenom jeden parametr datovΘho typu Short s nßzvem Φφslo. Bli₧Üφ pohled na parametry a argumenty m∙₧ete najφt v kapitole Charakteristika pojm∙ argument a parametr.

 

Jak ji₧ vφte, funkce po vykonßnφ svΘ prßce vracφ nßvratovou hodnotu. V deklaraΦnφm p°φkazu je pot°ebnΘ determinovat datov² typ nßvratovΘ hodnoty funkce. UrΦenφ nßvratovΘ hodnoty funkce se uskuteΦnφ zapsßnφm klφΦovΘho slova As za signaturu funkce a p°idßnφm nßzvu platnΘho datovΘho typu. Z deklarace naÜφ funkce je z°ejmΘ, ₧e funkce bude vracet celoΦφselnou hodnotu typu Integer. Vrßcenφ hodnoty mß na starosti p°φkaz Return. VÜe, co se nachßzφ za tφmto p°φkazem tvo°φ nßvratovou hodnotu funkce (v naÜem p°φpad∞ jde o hodnotu prom∞nnΘ Druhß_Mocnina). áá

 

NaÜe funkce (Moje_Funkce) pracuje v n∞kolika krocφch. Abyste ovÜem byli schopni opravdu pochopit skuteΦnou Φinnost funkce, musφme si nejprve oz°ejmit pojmy argument a parametr.

 

 

Charakteristika pojm∙ argument a parametr

 

Pojmy argument a parametr jsou ve sv∞t∞ programovßnφ velice d∙le₧itΘ, a proto bude dobrΘ, kdy₧ budete jejich studiu v∞novat vφce Φasu. Argumentem se rozumφ hodnota, kterß je poskytnuta funkci jako jakßsi ävstupnφ surovinaô. Aby ovÜem funkce mohla tuto hodnotu p°ijmout a uchovat, musφ disponovat parametrem, neboli prom∞nnou, do kterΘ se p°ijφmanß hodnota ulo₧φ. Vztah mezi argumentem a parametrem je znßzorn∞n na obr. 3.

 

 

Obr. 3 û Ilustrace vztahu argumentu a parametru

 

 

Charakteristika zp∙sobu p°edßvßnφ argument∙

 

Visual Basic .NET podporuje dv∞ varianty p°edßvßnφ argument∙:

 

P°i p°edßvßnφ argument∙ hodnotou je volanΘ funkci poskytnuta jenom kopie skuteΦnΘho argumentu. Funkce tak pracuje pouze s kopii skuteΦnΘho argumentu a i kdy₧ argument zm∞nφ, tato zm∞na bude pouze lokßlnφ a nijak neovlivnφ skuteΦn² argument. Jestli₧e budete chtφt, aby byl argument funkci p°edßn hodnotou, p°ed nßzev parametru, jen₧ bude p°ijφmat tento argument, dodßte klφΦovΘ slovo ByVal. Pou₧itφ tohoto klφΦovΘho slova p°i p°edßvßnφ argument∙ hodnotou ovÜem nenφ povinnΘ, proto₧e VB .NET implicitn∞ p°edßvß vÜechny argumenty hodnotou. Kdy₧ tedy p°ed jmΘno p°ijφmacφho parametru nep°idßte klφΦovΘ slovo ByVal, nic se ned∞je, stejn∞ bude argument p°edßvßn hodnotou. Zapsßnφ klφΦovΘho slova ByVal ale zp°ehled≥uje k≤d a vizußln∞ vßs informuje o zp∙sobu p°edßvßnφ argument∙. á

 

Na druhΘ stran∞ se m∙₧ete st°etnout takΘ s p°edßvßnφm argument∙ odkazem. V tomto p°φpad∞ je volanΘ funkci poskytnut skuteΦn² argument. P°esn∞ji, funkci je dodßn ukazatel na pam∞¥ovou adresu, na kterΘ se skuteΦn² argument nachßzφ. Kdy₧ funkce zφskß p°φstup ke skuteΦnΘ hodnot∞, m∙₧e ji takΘ lehce modifikovat podle sv²ch po₧adavk∙. Kdy₧ budete chtφt, aby byl parametru funkce p°edßn argument odkazem, p°ed jmΘno parametru p°idejte klφΦovΘ slovo ByRef. P°edßvßnφ argument∙ odkazem je velmi u₧iteΦnß technika, kterß se vyu₧φvß takΘ p°i n∞kter²ch pokroΦil²ch programovacφch postupech.

 

 

Praktickß ukßzka pou₧itφ funkce

 

V tΘto praktickΘ studii si ukß₧eme, jak volat funkci z volajφcφ procedury. Postupujte takto:

 

  1. Vytvo°te novou aplikaci pro Windows (Windows Application).
  2. Na formulß° p°idejte jedno tlaΦφtko, kterΘ nechte implicitn∞ pojmenovanΘ.
  3. Poklepejte na tlaΦφtko, Φφm zobrazφte editor pro zßpis k≤du. Za p°φkaz End Sub udßlostnφ procedury Button1_Click vlo₧te prßzdn² °ßdek a zadejte nßsledujφcφ programov² k≤d pro funkci Moje_Funkce:

 

ááá Public Function Moje_Funkce(ByVal Φφslo As Short) As Integer

ááááááá Dim Druhß_Mocnina As Integer

ááááááá Druhß_Mocnina = Φφslo * Φφslo

ááááááá Return Druhß_Mocnina

ááá End Function

 

á

  1. Do udßlostnφ procedury Button1_Click vlo₧te tento °ßdek k≤du:

 

áááááááá

áááááááá MessageBox.Show(Moje_Funkce(100).ToString)

 

JednotlivΘ Φßsti deklarace funkce Moje_Funkce jsme si ji₧ objasnili. V tΘto chvφli se zam∞°te na parametr funkce s nßzvem Φφslo. Jak vidφte, p°ed jmΘnem parametru je uvedeno klφΦovΘ slovo ByVal, kterΘ indikuje, ₧e argument, kter² bude parametr p°ijφmat, bude p°edßvßn hodnotou. Parametr bude tedy obsahovat jenom kopii skuteΦnΘ hodnoty. A jakß₧e hodnota bude parametru p°edanß? Bude to hodnota, kterß je poskytnuta funkci p°i jejφm zavolßnφ z volajφcφ procedury. Kdy₧ se podφvßte na k≤d udßlostnφ procedury Click tlaΦφtka Button1, uvidφte, ₧e funkci je poskytnuta celoΦφselnß hodnota 100.

 

Poj∩me ovÜem dßl a podφvejme se blφ₧e na algoritmus prßce funkce.

 

PotΘ, co je funkci dodßna hodnota 100, je kopie tΘto hodnoty (resp. tohoto argumentu) umφst∞na do parametru Φφslo. Proto₧e je parametr deklarovßn jako prom∞nnß datovΘho typu Short, jeho₧ rozsah tvo°φ uzav°en² interval <-32,768, 32,767>, je vÜe v po°ßdku a kopie argumentu m∙₧e b²t ·sp∞Ün∞ ulo₧ena do prom∞nnΘ Φφslo. Kdybyste ovÜem p°ekroΦili povolen² rozsah datovΘho typu, program by nepracoval sprßvn∞ a st°etli byste se s chybou za b∞hu programu. á

 

V okam₧iku, kdy parametr funkce obsahuje kopii skuteΦnΘ hodnoty, je tato kopie pou₧ita k dalÜφ operaci, kterou je vypoΦtenφ jejφ druhΘ mocniny. V²sledek souΦinu je poslΘze ulo₧en do lokßlnφ prom∞nnΘ s nßzvem Druhß_Mocnina. Ve finßlnφm kroku je vypoΦtenß druhß mocnina argumentu vrßcena pomocφ p°φkazu Return volajφcφ udßlostnφ procedu°e Button1_Click. Vrßcenß hodnota je nakonec zobrazena v okn∞ se zprßvou, kterΘ je zobrazeno prost°ednictvφm metody Show t°φdy MessageBox.á

 

 

Jßn Hanßk