Kezdőoldal » Számítástechnika » Programozás » C# szerű típusosság C++-ban?

C# szerű típusosság C++-ban?

Figyelt kérdés

Felötlött bennem egy kérdés, amire várnék kreatív hozzászólásokat, ötleteket. Lehet semmi új nincs benne, esetleg van ahol használnak is ilyet, csak nem tudok róla.


Fel lehetne-e építeni C++-ban olyan osztályrendszert, mint ami C#-ban van? Gondolok itt arra, hogy minden osztálynak közös őse van és minden objektum tudja magáról a saját típusát, amit bármikor meg lehet tőle kérdezni. Meg lehet-e oldani, hogy egy "Object" ősosztály leszármazottainak ha több másik őst akarunk megadni egyszerre (hurok kerül a leszármazási fába), akkor a fordító hibát jelezzen fordításnál? Milyen módszerekkel/eszközökkel(define, typedef, template ... stb.) lehetne ezt megvalósítani? Esetleg létezik-e már ilyen előre megírt publikus header vagy könyvtár, amit le lehet tölteni valahonnan?

Gondolom az a kiinduló állapot, hogy minden osztályhoz tartozik Type néven egy konstans string ami megegyezik az osztály nevével. Hogyan lehetne ezt generalizálni/automatizálni/a kezelését a fordítóra bízni?


Nyilván C++-nak és C#-nak is megvan a saját felhasználási területe és mindegyik másra jó és másban erős. C#-ban viszont szerintem rengeteg kényelmet és plusz lehetőséget nyújt (főleg a template-ek felhasználásánál), az ott megvalósított típusrendszer és szívesen alkalmaznám C++-ban is, amennyiben megvalósítható.



2014. jan. 12. 13:48
 1/4 anonim ***** válasza:
mindkét nyelv objektumorientált, nem tudom mi bajod van
2014. jan. 12. 14:49
Hasznos számodra ez a válasz?
 2/4 anonim ***** válasza:
a c++ ezzel elvesztené minden előnyét kb.
2014. jan. 12. 15:08
Hasznos számodra ez a válasz?
 3/4 anonim ***** válasza:
Ha egy programozónak meglenne egy szabad C++ fordító forráskódja, akkor tudná C#-osítani a nyelvet, ősosztállyal, reflexióval, egyszeres öröklődéssel és interfészekkel. Aztán adna neki egy új nevet, mert ez már nem a C++, hanem egy új nyelv.
2014. jan. 12. 20:39
Hasznos számodra ez a válasz?
 4/4 anonim ***** válasza:
Én ezt úgy csinálnám meg, hogy bevezetnék meg egy típusfajtát, a C#-szerű osztályt, ami C#-hoz hasonlóan viselkedne. Többszörös öröklődésnél absztrakt osztályból lehetne több őse. A hagyományos és az újfajta osztályok is származhatnak közös ősből, és a reflexió is mehetne mindegyikre, de az egyszeres öröklődést csak az újfajta osztály tudná.
2014. jan. 12. 20:50
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!