A InfoWiki wikiből
(Változatok közti eltérés)
(Új oldal, tartalma: „<cim cim3="Megosztott változók" cim2="Magasszintű Programozási Nyelvek I." cim1="Imperatív, procedurális nyelvek alapjai" prev="mp1/page480" next="mp1/page50...”) |
|||
13. sor: | 13. sor: | ||
w1="mp2/Nyitolap|Gyakorlatok" w2="mp1/Tematika|Vizsgatematika" w3="cs/Blog|Programok C# nyelven" | w1="mp2/Nyitolap|Gyakorlatok" w2="mp1/Tematika|Vizsgatematika" w3="cs/Blog|Programok C# nyelven" | ||
/> | /> | ||
- | |||
= Megosztott változók = | = Megosztott változók = | ||
+ | |||
+ | Amennyiben a programunkat több alprogramból áll, komoly kihívás előtt állunk. Az alprogramok | ||
+ | egymás által kiszámolt értékekre hivatkoznak. Az egyik alprogramban kiszámolt értékeket | ||
+ | egy másik alprogramban is fel kell használnunk. Sajnos, a változódeklaráció ekkor már kevés | ||
+ | lesz! Ugyanis a változódeklaráció során valamely alprogramban deklarálunk egy változót, | ||
+ | melynek '''hatásköre''' a befoglaló kapcsos zárójelen túl nem terjed - amely legjobb | ||
+ | esetben is a befoglaló alprogram törzsének befejező kapcsos zárójele: | ||
+ | |||
+ | <code lang="csharp"> | ||
+ | class Program | ||
+ | { | ||
+ | static void Egyik() | ||
+ | { | ||
+ | int a=3; // az 'a' valtozo hatáskörének kezdete | ||
+ | ... | ||
+ | } // és vége | ||
+ | |||
+ | static void Masik() | ||
+ | { | ||
+ | ... | ||
+ | a++; // HIBA: itt nem tudunk az 'a' változóra hivatkozni | ||
+ | ... | ||
+ | } | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | Ezen az sem segít, ha a ''Masik()'' alprogramban is deklarálunk egy ''a'' nevű | ||
+ | változót. Az ugyanis nem a fenti 'a' változót fogja jelölni, hanem egy ''másik'' | ||
+ | változót. | ||
+ | |||
+ | |||
+ | <code lang="csharp"> | ||
+ | class Program | ||
+ | { | ||
+ | static void Egyik() | ||
+ | { | ||
+ | int a=3; // a saját 'a' változónk | ||
+ | Masik(); // ő egy másikat használ | ||
+ | Console.Write(a); // a sajátunk még mindíg 3 | ||
+ | ... | ||
+ | } | ||
+ | |||
+ | static void Masik() | ||
+ | { | ||
+ | ... | ||
+ | int a=4; // ez itt egy másik 'a' változó | ||
+ | ... | ||
+ | } | ||
+ | } | ||
+ | </code> | ||
+ | |||
+ | = Megosztott változók deklarálása = | ||
+ | |||
+ | Amennyiben | ||
+ | |||
+ | = Más osztályok esete = | ||
+ | |||
+ | = Konstansok = | ||
+ | |||
<alairas>Hernyák Zoltán</alairas> | <alairas>Hernyák Zoltán</alairas> | ||
__NOTOC__ | __NOTOC__ |
A lap 2009. november 14., 12:27-kori változata
Megosztott változók
Amennyiben a programunkat több alprogramból áll, komoly kihívás előtt állunk. Az alprogramok egymás által kiszámolt értékekre hivatkoznak. Az egyik alprogramban kiszámolt értékeket egy másik alprogramban is fel kell használnunk. Sajnos, a változódeklaráció ekkor már kevés lesz! Ugyanis a változódeklaráció során valamely alprogramban deklarálunk egy változót, melynek hatásköre a befoglaló kapcsos zárójelen túl nem terjed - amely legjobb esetben is a befoglaló alprogram törzsének befejező kapcsos zárójele:
class Program { static void Egyik() { int a=3; // az 'a' valtozo hatáskörének kezdete ... } // és vége static void Masik() { ... a++; // HIBA: itt nem tudunk az 'a' változóra hivatkozni ... } }
Ezen az sem segít, ha a Masik() alprogramban is deklarálunk egy a nevű változót. Az ugyanis nem a fenti 'a' változót fogja jelölni, hanem egy másik változót.
class Program { static void Egyik() { int a=3; // a saját 'a' változónk Masik(); // ő egy másikat használ Console.Write(a); // a sajátunk még mindíg 3 ... } static void Masik() { ... int a=4; // ez itt egy másik 'a' változó ... } }
Megosztott változók deklarálása
Amennyiben
Más osztályok esete
Konstansok
Hernyák Zoltán