Kezdőoldal » Számítástechnika » Programozás » C# ben a where kulcsszót mire...

C# ben a where kulcsszót mire használják és miért van rájuk szükség?

Figyelt kérdés

Nem generikus típusoknál ilyet nem is látni.Ott csak where nélkül simán megadják,hogy pl:

class Ember: public Lábak {}


Generik esetében pedig miért így:

class Ember<T> where T: Lábak {}


2013. nov. 12. 06:33
 1/8 anonim ***** válasza:
Ebbõl elég erõsen következik, hogy a sablon paramétert lehet megadni vele.
2013. nov. 12. 06:54
Hasznos számodra ez a válasz?
 2/8 A kérdező kommentje:

Miről beszélsz??? :)

Sablon paramétereket úgy tudom,hogy a példányosításnál a <> jelek között kell megadni.

2013. nov. 12. 07:17
 3/8 anonim ***** válasza:
És hogy adod meg, ha a sablon paraméter öröklõdik valamibõl? Na? ;)
2013. nov. 12. 07:19
Hasznos számodra ez a válasz?
 4/8 A kérdező kommentje:

Nem értem hogy gondolod.


Elég volna csak így:

class Ember<T>: public Lábak {}

//Példányosítás

Ember<int> a = new Ember();

2013. nov. 12. 07:22
 5/8 anonim ***** válasza:
A két dolog egyáltalán nem ugyanaz.
2013. nov. 12. 07:25
Hasznos számodra ez a válasz?
 6/8 anonim ***** válasza:

A "where T: Lábak"-ben ott van, hogy ahol a T Lábakból származik.

Tehát nem csinálhatsz Ember<int>-et.

Ember<Lábak>-ot csiálhatsz, vagy Ember<bármi>-t, ahol a bármi a Lábakból származik.

2013. nov. 12. 09:04
Hasznos számodra ez a válasz?
 7/8 anonim válasza:

class Ember : Lábak

Az Ember osztály származtatása a lábakból.


class Ember<T> where T : Lábak

Megszorítás T-re


C# ban a where kulcsszót mire használják és miért van rájuk szükség?

Jelen esetben azért, amiért a felettem hozzászóló írta, hogy ne lehessen akármilyen típussal létrehozni ember objektumokat.

Általánosabban a where kulcsszó nem csak itt fordul elő, pl. linq lekérdezéseknél is, ott más a funkciója.

2013. nov. 12. 12:08
Hasznos számodra ez a válasz?
 8/8 anonim ***** válasza:

A generikus típust szűkítheted a segítségével,

tehát megadhatod, hogy a te saját generikus típusod nem fogad el bármilyen típust, csak olyat, ahol a típus a Lábak-ból származik közvetlenül vagy közvetve.

2013. nov. 13. 14:18
Hasznos számodra ez a válasz?

Kapcsolódó kérdések:




Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu

A weboldalon megjelenő anyagok nem minősülnek szerkesztői tartalomnak, előzetes ellenőrzésen nem esnek át, az üzemeltető véleményét nem tükrözik.
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!