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

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

Hasonló előadás


Az előadások a következő témára: "1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz."— Előadás másolata:

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

2 2 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)

3 3 A C# nyelv alapvető típusai boolbool → System.Boolean bytebyte → System.Byte sbytesbyte → System.SByte charchar → System.Char decimaldecimal → System.Decimal doubledouble → System.Double floatfloat → System.Single intint → System.Int32 uintuint → System.UInt32 longlong → System.Int64 ulongulong → System.UInt64 objectobject → System.Object shortshort → System.Int16 ushortushort → System.UInt16 stringstring → System.String

4 4 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;

5 5 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!

6 6 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! for (utasítás1;feltétel;utasítás3) { …; } foreach (típusnév azonosító in tomb)u tasitas_blokk; while (log_feltétel) utasítás_blokk; do utasítás_blokk; while (log_feltétel); while (log_feltétel) utasítás_blokk; do utasítás_blokk; while (log_feltétel);

7 7 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!

8 8 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!

9 9 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);

10 10 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);

11 11 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);

12 12 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) {... }

13 13 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.


Letölteni ppt "1 Hernyák Zoltán Programozási Nyelvek II. Eszterházy Károly Főiskola Számítástudományi tsz."

Hasonló előadás


Google Hirdetések