- Google Pixel topik
- Apple iPhone 17 - alap
- Homokféreggel is pózolhatna a OnePlus 15
- Motorola Moto G84 - színes egyéniség
- Apple iPhone Air - almacsutka
- Xiaomi 13T és 13T Pro - nincs tétlenkedés
- Apple Watch Sport - ez is csak egy okosóra
- Merész dizájn és új teleobjektív az iPhone 17 Pro mobilokban
- iPhone topik
- Samsung Galaxy S25 Ultra - titán keret, acélos teljesítmény
-
Mobilarena
Ú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!
- Dell Latitude 5440 Intel i7-1365U vPro 16GB RAM 512GB SSD 14" FHD Gar.: 2027.03.21
- Logitech Harmony Companion (hub+távirányító) rendszer
- EliteBook 840 G11 14" FHD+ IPS Ultra 5 135U 16GB 256GB NVMe ujjolv IR kam gar
- Samsung Galaxy S25 Ultra 12/256GB Újszerű.Kártyafüggetlen,Dobozos,Tartozékaival. 1 Év Garanciával!
- Bomba ár! Lenovo ThinkPad E540 - i7-4702MQ I 8GB I 500GB I Nvidia I 15,6" FHD I CAM I W10 I Gari!
- Gamer PC-Számítógép! Csere-Beszámítás! I7 6700 / Rog RX580 8GB / 32GB DDR4 / 500GB SSD
- MacBook, Apple M1 / M2 kompatibilis dokkolók, DisplayLink 4K, USB-C, Type-C
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Space Black -1 ÉV GARANCIA - Kártyafüggetlen, MS3172
- RAKTÁRSÖPRÉS!!! - Videókártyák, Monitorok, Notebookok, Stb. - Szaküzletből! Számlával!
- PlayStation Network (PSN) ajándékkártyák, feltöltőkártyák áron alul!
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest