Olen aloittamassa uutta projektia, jossa on tarkoituksena päivittää tietty softa C muodosta C# muotoon. Olen vielä aloittelija C#:n kanssa joten jotkut asiat ovat vielä hieman hakusessa.
Yksi vanhan softan luokista sisältää kaksi pointteria viitaten luokkien X ja Y olioihin. Kyseinen luokka toimii ikään kuin putkena näiden kahden luokan välillä ja jokainen tämän luokan instanssi siis yhdistää tietyn luokan X instanssin tiettyyn luokan Y instanssiin.
Ongelmana on että käsittääkseni C#:ssa ei suositella pointtereiden käyttämistä, mutta tässä tapauksessa se on aika lailla välttämätöntä. Vaihtoehtona olisi laittaa luokkien X ja Y oliot suoraan tämän linkkiluokan jäseniksi, mutta silloin jos jonkin X:n tai Y:n instanssin tietoja muutetaan pitäisi käydä läpi kaikki linkkioliot ja päivittää niiden tiedot, mikä voisi viedä melkoisesti suoritusaikaa. Ja tietojen monistaminen tuolla tavalla kuluttaisi turhaan muistia.
Jos siis tuo linkkiolio toteutetaan osoittimia käyttämällä miten olioiden tuhoamisen kanssa on. Ilmeisesti noille pitäisi määritellä Dispose-metodi ja käyttää sitä tarvittaessa ?
Osoittimien käyttö C# luokkien jäseninä
The Real J.
1
932
Vastaukset
- Koodia
Käytännössä C#:ssa olioita kuljetetaan aina viittauksilla (structilla voi kiertää tuon), joten tuota päivitysongelmaa ei tule.
Roskienkeruu hoitaa tuhoamisen, Disposea tarvitset, jos haluat kutsua tuhoamista itse, esimerkiksi sulkeaksesi tiedosto- tai tietokantayhteyksiä.
Ketjusta on poistettu 0 sääntöjenvastaista viestiä.
Luetuimmat keskustelut
Suomen kansa haluaa Antti Lindtmanista pääministerin
Lindtman on miltei tuplasti suositumpi kuin etunimikaimansa Kaikkonen. Näin kertoo porvarimedian teettämä kysely. http2444268Vain 21% kannattaa Lindtmania pääministeriksi
se on selvästi vähemmän kuin puolueen kannatus, mites nyt noin?1202724Miten löydän sinut
Ja saan sanottua kaiken mitä haluan sinulle kertoa? Ja kuinka kuuntelisit minua sen hetken? Kuinka voin ilmaista sen mit412482Yöllinen autolla kaahari Heinolan seudulla
Asukkaita häiriköivän nuoren herran autokaahaus keskustelu poistettu, onko jokin hyvävelijärjestelmä käytössä ?841519Vaikea tilanne
Hieman kolkuttaa omatuntoa, kun on osoittanut kiinnostusta väärää naista kohtaan. En ymmärrä miten toinen on voinut te1161466- 481199
- 781117
- 45986
- 59983
Julkinen sektori on elänyt aivan liian leveästi yli varojensa!
Viimeisen 15 vuoden aikana julkisen puolen palkat ovat nousseet n. 40%, kun taas yksitysellä sektorilla vain n. 20%. En173965