Hirdetés
- Luck Dragon: Asszociációs játék. :)
- sziku69: Fűzzük össze a szavakat :)
- GoodSpeed: Nem vénnek való vidék - Berettyóújfalu
- NASsoljunk: ZyXEL NSA-310 és az FFP
- sziku69: Szólánc.
- Meggyi001: A kérdés...
- oriic: A TOP 10 legtöbb hozzászólással rendelkező PH! felhasználó
- Trewerr: Analóg-digitális jelátalakítás (zenefájlok leegyszerűsítésével magyarázva)
- Lalikiraly: Astra kalandok @ Negyedik rész
- Sub-ZeRo: Euro Truck Simulator 2 & American Truck Simulator 1 (esetleg 2 majd, ha lesz) :)
Új hozzászólás Aktív témák
-
joysefke
veterán
válasz
Flashback
#9445
üzenetére
Ezt Databindinggal és ObservableCollectionnel szokás megoldani, illetve amikor a user a GUI-n a lista aljára ér, akkor ott keletkezhet egy event amire feliratkozhat a kódod, arra reakcióként pedig betöltheted a következő oldalt (hozzáadod az ObservableCollection-höz, a databinding pedig onnantól elintézi a többit) mondjuk Xamarin.forms-ban ez lenne.
Gondolom oka van hogy nálad így lett megoldva...
-
dqdb
nagyúr
válasz
Flashback
#9447
üzenetére
A struct ugyanúgy bővíthető metódusokkal, ez nem C, C#-ban a struct mást jelent, mint C-ben. A fenti linkemen a mikor használj structot class helyett listában négyből három feltételt nem teljesít a kódod:
* It logically represents a single value, similar to primitive types (int, double, etc.).
* It has an instance size under 16 bytes.
* It is immutable. -
joysefke
veterán
válasz
Flashback
#9437
üzenetére
A többiek jól mondják, a ref kulcsszó kell neked, de már a kérdésből gyanús, hogy valamit nem úgy csinálsz ahogy illene:
Ha átadsz egy inicializált List-et paraméterként egy metódusnak, akkor ez esetek nagy részében ezt azért kéne tegyed, hogy a metódus olvassa a List-et, esetleg módosítsa a tartalmát (feltöltse vagy hozzáadjon) és nem azért, hogy a kapott referenciát megváltoztasd és ezáltal az eredeti List adatszerkezetet eldobd. Ha az eredeti List-re nem mutat másik referencia akkor az GC-zve lesz. Mi értelme volt akkor elötte inicializálni?
Ha új listát akarsz létrehozni, akkor érdemesebb lenne azt a metóduson belül megtenni és annak visszatérési értékeként visszaadni. Ebben az esetben viszont nem illik semmilyen bemenő paramétert megváltoztatni.
-
Karma
félisten
válasz
Flashback
#5208
üzenetére
Adott a következő statikus osztály: [link]. Az ElementValue érdekes, de ott hagytam példaként két másik metódust, ami double-t vagy decimalt parse-ol ki az értékből.
A parsered így módosulhat ezek felhasználásával:
DPCO = item.Element("Data").ElementValue("PCO"),
DCaption = item.Element("Data").ElementValue("Caption"),
SConnect = item.Element("Data").ElementValue("Connection"),És ekkor kezelted azt, ha a Data vagy a PCO/Caption/Connection null.
-
Alexios
veterán
válasz
Flashback
#5208
üzenetére
lényege az, hogy megfogod tudni hivni xelementen is, mintha "saját" metódusa lenne. Pontosabban olyan típushoz tudod meghívni ami elé a "this" szót adod a metódus paraméterlistájában
trisztani94: helyzettől függően null coalescing pl, vagy akár extension method
Én ahol lehet null coalescinget használok mert sokat tud röviditeni a kódon, főleg ha több null ellenőrzés is lenne az if-en belül, az itt csak annyi hogy: xyz = x??y??z pl. -
Alexios
veterán
válasz
Flashback
#5199
üzenetére
Vagy ott van még a "null coalescing" operátor(nemtudom hogy van magyarul
) azaz pl:valami = (string)b.Element("valami") ?? String.Empty
Tehát ha a (string)b.Element("valami") null, akkor itt egy üres stringet állit be pl neki, ha meg nem null, akkor meg azt ami az értéke lenne -
trisztan94
őstag
válasz
Flashback
#5199
üzenetére
Ez most egy nagyon általános példa lesz, de remélem megérthető.
// A szam1 változó értéke null lesz, mivel nincs értéke.
int szam1;
int szam2 = 3;
// Itt mivel egy null értéket akarunk felhasználni, kapsz egy nullReferenceException-t, ami azt jelenti,
// hogy null-ra hivatkoztál, tehát a semmire hivatkoztál.
Console.WriteLine(string.Format("A két szám összege: {0}", szam1 + szam2));Ezt ki lehet védeni egy try-catch-el:
try
{
int osszeg = szam1 + szam2;
}
catch
{
// Elkapjuk a kivételt, lekezeljük a hibát, hibaüzenetet írunk ki.
MessageBox.Show("Kérem adjon értéket az első számnak!");
}Vagy ahogy martonx írta, lehet null-ra csekkolni egy if-el:
if(szam1 != null)
{
// Csinálunk valamit.
}
else
{
MessageBox.Show("Kérem adjon értéket az első számnak!");
} -
válasz
Flashback
#5162
üzenetére
Miért nem valami data típust töltesz fel "adatbázis" jellegű adattal, miért kell tömböt használni?
Vagy használj List<string[]>-et és a header beolvasásánál már tudod, mire kell mindig inicializálni a string[]-t. így legalább nem kell kétszer beolvasni az egész fájlt...
Új hozzászólás Aktív témák
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Gigantikus fordulatot vett a GeForce RTX 50 Super sorozat törlése
- Battlefield 6
- Apple iPhone 15 Pro Max - Attack on Titan
- Nintendo Switch 2
- PlayStation 5
- Kormányok / autós szimulátorok topikja
- ThinkPad (NEM IdeaPad)
- Call of Duty: Warzone
- Luck Dragon: Asszociációs játék. :)
- Google Pixel topik
- További aktív témák...
- Üzletből, garanciával, MSI Creator Z16 A12UET-039IT intel Core i7-12700H/16GB RAM/1TB SSD/RTX3060
- Denon AVR X2100W Magnat Vector 77 5.1 hangfalakkal
- Üzletből, garanciával, Új Lenovo ThinkPad X1 Carbon Gen 12 Ultra 7 155u/32GBRAM/1TB SSD/OLED kijelző
- Bivaly erős Lenovo T14 gen4 (13.gen Core I7 32Gb DDR5 1Tb SSD) + 14 hó GARANCIA
- Asus TUF Gaming A17 AMD Ryzen 7-7435HS/16GB RAM/512GB SSD/RTX4050VGA/17,3" 144Hz kijelző
- Új monitor állvány- elegáns megoldás a dupla A/4-es papírcsomag helyett - csak össze lett szerelve
- Telefon felvásárlás!! iPhone 14/iPhone 14 Plus/iPhone 14 Pro/iPhone 14 Pro Max
- Xiaomi Redmi Note 9 Pro 128GB, Kártyafüggetlen, 1 Év Garanciával
- Telefon felvásárlás!! Xiaomi Redmi 9, Xiaomi Redmi 9AT, Xiaomi Redmi 10, Xiaomi Redmi 10 2022
- BESZÁMÍTÁS! Asus H370 i7 8700K 16GB DDR4 512GB SSD RTX 2070 8GB RAMPAGE Shiva A-data 600W
Állásajánlatok
Cég: NetGo.hu Kft.
Város: Gödöllő
Cég: Laptopműhely Bt.
Város: Budapest
Ha sokat C-ztél akkor itt át kell állnod kicsit más nézőpontra.
Én ahol lehet null coalescinget használok mert sokat tud röviditeni a kódon, főleg ha több null ellenőrzés is lenne az if-en belül, az itt csak annyi hogy: xyz = x??y??z pl.

) azaz pl:
