Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Hernyák Zoltán Programozási Nyelvek II.

Hasonló előadás


Az előadások a következő témára: "Hernyák Zoltán Programozási Nyelvek II."— Előadás másolata:

1 Hernyák Zoltán Programozási Nyelvek II.
Microsoft.NET környezet Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz 1

2 Microsoft.NET környezet
A C# nyelv története 2000 közepén jelent meg Java és C++ alapok Nincsenek benne pointerek OOP nyelv, vagyis csak OOP módon lehet benne programozni Minden változó egy osztály része kell legyen (nem támogatja a hagyományos, független, globális változókat) Minden függvény egy osztály része kell legyen (nincsenek benne hagyományos, osztálytól független globális függvények) 2

3 Microsoft.NET környezet
A C# nyelv alapvető típusai bool → System.Boolean byte → System.Byte sbyte → System.SByte char → System.Char decimal → System.Decimal double → System.Double float → System.Single int → System.Int32 uint → System.UInt32 long → System.Int64 ulong → System.UInt64 object → System.Object short → System.Int16 ushort → System.UInt16 string → System.String 3

4 Microsoft.NET környezet
A C# nyelv tömbök: Kicsit máshogy: int[] tomb = new int[3]; Elérése hasonlóan: tomb[ 0 ] = 12; x = tomb[ 1 ]+4; Kezdőértékadása: int[] t1 = {1, 2, 3}; int[] t2 = new int[3] {0, 1, 2}; A tömb önleíró, nem lehet túlcímezni! Ha mégis -> futási hibát kapunk. A C# nyelv konstansok: const double Pi = 3.14; 4

5 Microsoft.NET környezet
A C# nyelv - IF if (log_feltétel) utasítás_blokk_1; if (log_feltétel) utasítás_blokk_1; else utasítás_blokk_2; Kötelezően logikai feltétel! Nem lehet numerikus, mint C-ben! A C# nyelv - SWITCH switch ( egész vagy string típusú kifejezés) { case konstans1 : ...; break; case konstans2 : ...; break; case konstans3 : …; goto case konstans4; case konstans4 : …; return; default : ...; break; } Kötelező a break, vagy egyéb ugró utasítás használata! Nem mint C-ben, ahol a vezérlés ‘rácsoroghat’ másik ágakra is! 5

6 for (utasítás1;feltétel;utasítás3) { …; }
Microsoft.NET környezet A C# nyelv - WHILE Kötelezően logikai feltétel! Nem lehet numerikus, mint C-ben! A C# nyelv - FOR A C# nyelv - FOREACH „tomb” lehet tényleges tömb (array), vagy gyűjtemény (collection). Nagyon fontos! De csak később tárgyaljuk! while (log_feltétel) utasítás_blokk; do utasítás_blokk; while (log_feltétel); for (utasítás1;feltétel;utasítás3) { …; } foreach (típusnév azonosító in tomb)u tasitas_blokk; 6

7 Microsoft.NET környezet
A C# nyelv – MAIN fv public static int Main(string[] args) { … utasítások … } A neve nagybetűvel MAIN ! Tetszőleges osztály belsejében szerepelhet! Csak 1 db lehet belőle a teljes projekt-re nézve! Példát lásd később! 7

8 Microsoft.NET környezet
A C# nyelv – paraméterátadás Amíg nem tárgyaljuk az érték típus és referencia típus közötti különbséget, addig nehéz definiálni a címszerinti és érték szerinti paraméterátadás közötti különbséget! 8

9 Microsoft.NET környezet
A C# nyelv – paraméterátadás Bemenő értékek átadása egy függvény számára: ( C-ben megszokott módon megy): void Fv(int value) { ... } hívás helyén (szerepelhet kifejezés is): int x=8; Fv(x); Fv(12); Fv(x-4); 9

10 Microsoft.NET környezet
A C# nyelv – paraméterátadás Átmenő értékek átadása egy függvény számára: Cím szerinti paraméterátadás létezik, ‘ref’ kulcsszóval: void Fv(ref int value) { …; value = 12; … } hívás helyén (x-nek értékének kell lennie a hívás előtt): int x=8; Fv(ref x); 10

11 Microsoft.NET környezet
A C# nyelv –paraméterátadás Kimenő értékek átadása: Ha a paramétert csak kimenő érték visszaadására használjuk, akkor speciális cím szerinti paraméterátadást használunk: ‘out’ kulcsszóval: void Fv(out int value) { …; value = 12; … } hívás helyén (x-nek nem kötelezően van értéke a hívás pillanatában!): int x; Fv(out x); 11

12 Microsoft.NET környezet
A C# nyelv –paraméterátadás Változó számú paraméter átadása: Ha egy függvénynek nem előre rögzített a paramétereinek száma (a típusa igen!), akkor speciális kulcsszóval kell jelölni: ‘params’. void Fv(string a, params int[] args) { …; x = args[0]+1; … } hívás helyén: Fv(”akarmi”,1,2,3,4,); // innentől kezdve csak int-ek ! Használható az ‘Object’ típusnév, ekkor a hívás helyén bármit át lehet adni. Használatához azonban még sokat meg kell érteni… void Fv(string a, params Object[] args) { ... } 12

13 Microsoft.NET környezet
A C# nyelv – paraméterátadás Támogatott az overloading. Nem támogatott (egyelőre) az alapértelmezett paraméter. Nem támogatott (egyelőre) a konstans paraméter. 13


Letölteni ppt "Hernyák Zoltán Programozási Nyelvek II."

Hasonló előadás


Google Hirdetések