-
Fototrend

Új hozzászólás Aktív témák
-
j0k3r!
őstag
elso ranezesre:
- felejtsd el az ilyen getValami jellegu dolgokat, a property get{} reszeben implementald az esetleges hibakezelo logikat (vagy private fuggvenyben, ha tobb helyen kell)
- ha mar exceptiont dobsz, akkor hasznalj try-catch blokkot
- az ilyen "m" es "f" jellegu dolgok helyett hasznalhatsz felsorolastipust (enum), csak ezekkel ovatosan kell banni
- az ilyen nev1, nev2, t, gy helyett hasznalj normalis valtozoneveket
- c#-ban osztaly, property neve altalaban pascalcase
- valtozok beolvasasanal, hasznalj tryparse fuggvenyeket (peldaul amikor stringbol intet varazsolsz)most igy hirtelen ennyi, ha valamit kihagytam majd megirjak masok, ezek alapjan szerintem mar el lehet indulni

-
Jim-Y
veterán
A konstruktoros dolog nem bonyolítaná a dolgokat, sőt.. egyszerűsítené.. így gondoltam:
class Ember
{
public string nev1; //személy neve
public string nev2; //házastárs
protected int ev1; // sz.kor
protected int ev2; //h.kor
protected string nem1; //sz.nem
protected string nem2; //h.nem
public string apa;
public string anya;
public List<string> t = new List<string>();
public List<string> gy = new List<string>();
//
// KONSTRUKTOR
public Ember(string nev1, string nev2, int ev1, int ev2, string nem1, string nem2){
// itt rögtön lehet ellenőrizni, hogy bevitt paraméterek megfelelőek-e, pl
this.nev1 = nev1;
this.nev2 = nev2;
if (ev1 > 1913 && ev1 < 1995) {
this.ev1 = ev1;
} else { throwExc("Hibás ev1"); }
this.ev2 = ev2;
this.nem1 = nem1;
this.nem2 = nem2;
}
// Getter, Setter fv-ek
public void throwExc(string ex) throw new Exception (ex);
}Ekkor a mainben tudsz csinálni:
Ember e = new Ember();
e.setev1(1950);
e.setev2(1960);
e.setnem1(m);vagy helyette
Ember f = new Ember("Gipsz","Jakab",1950,1960,"m","n"); // stb...
Persze ezeket fenntartásokkal kezeld, mert én még nem programoztam C#-ban és nem tudom, hogy például default konstruktor létre jön-e ilyenkor automatikusan, vagy létre kéne hozni stb.. De szerintem amit fentebb mutattam, konstruktorban megadni az adattagokat talán átláthatóbb

-
Jim-Y
veterán
Nem lenne jobb az ember adatait konstruktorban megadni? Illetve én még szétszedném a kódot külön osztályokba, és fájlokba.
mod: vagy csak simán add meg a default konstruktort ÉS egy olyan konstruktort amiben lehetőség van egyből inicializálni az Ember adattagokat.
Magyarán az ember egy külön osztály lenne (ez ugye most is így van a kódodban), de fizikailag egy külön fájlban lenne, máshol, mint ahol main.. A Program, és az Ember legyen elkülönült a progi modularitása miatt.
Ja és az osztályokat nagybetűvel szokás jelölni ^^
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
- Apple MacBook Pro 14 M5 PRO 15C CPU/16C GPU / 24GB / 1TB SSD (MGDR4MG/A) Space Black
- APPLE MACBOOK PRO 14 M5 MAX 18C CPU/32C GPU/36GB/2TB SSD (MGDU4MG/A) SPACE BLACK
- Üzletből, garanciával, Lenovo IdeaPad Slim 5 14IRL8 i7-13620H 16 szál /16GB RAM /1TB SSD /OLED
- DELL 5050 MT CORE i7 6700 GAMER PC 16Gb DDR4 512Gb SSD DVD GTX 1060 6GB DDR5 WIN11 1Év GARANCIA!
- DELL 5050 MT CORE i5 7600 GAMER PC 16Gb DDR4 512Gb SSD DVD GTX 1060 6GB DDR5 WIN11 1Év GARANCIA!
- HIBÁTLAN iPhone 17 Pro Max 256GB Deep Blue-1 ÉV GARANCIA - Kártyafüggetlen, 100% Akksi
- AKCIÓ! Dell Precision 3571 4G LTE i7-12700H 32GB 1000GB FHD RTX A1000 4GB 1 év teljeskörű garancia
- Samsung Galaxy S20 Ultra / 12/128GB / Kártyafüggetlen / 12Hó Garancia
- Lenovo ThinkPad P15 Gen 2 i7-11850H 32 GB RAM 512 GB SSD NVIDIA T1200 Garancia
- Frissen pasztázva! Playstation 4 Pro 1 TB + kontroller 6 hó garancia, számlával!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest




