Pari basic kysymystä

CSharp noob

Ensimmäiseksi kun olen lähinnä näiden eng kielisten sivustojen varassa, niin pari asiaa on jääny askarruttaa.

Ensimmäinnen on tämä muistin varaaminen ja niiden poistaminen.
Mitkä objektit lähtee automaattisesti ja mitkä pitää tehdä manuaalisesti?

Mulla on nappuloita jotka on tehty new operaattorilla, mihin sitten dynaamisesti liitän kuvia. Mutta missään en poista näitä kuvia? PItäiskö ja missä?

SItten mulla on oma luokka, mikä pitää eräänlaista animaatiota yllä, eli valitun nappulan vieressä sykkii mun Image objekti, tämäkin on tietenkin tehty new:llä, mutta sitäkään en poista. Luokissa ei ole deconstructorii kuten C :ssa.
Ja mitä tapahtuu jos teen aina vaan Image img = Image.FromFile(...);
ja vaikka pictureBox1.Image = img; Eli syökö toi aina vaan lisää muistia?
Pitäiskö tehdä se niin, että
if(pictureBox1.Image != null) pictureBox1.Image.Dispose();
ja sitten vasta laittaa uus image?

Entäs muut Formissa olevat omat new operaattorilla varatut asiat?
Pitäiskö ne ottaa kiinni siinä Form.Close viestissä ja poistaa kaikki varaukset?

Toi on vähä sekavaa, kun osan poistaa itse ja osan se tekee automaattisesti.
-------------------

Toinen on samaan imageen liittyvä asia.
Miten toi Grapich.DrawImage(Image, Point[]));
Oikein toimii? En saa sitä toimimaan halutulla tavalla sitten mitenkään.

Eli mulla on Image otettu tiedostosta, mitä timerin avulla yritän saada rullaamaan kaksi kertaa sekunnissa ja image liikkuu pysty suunnassa 3 pikselii kerrallaan alaspäin ja loput siitä menee ylös niin, että siitä saa sellasen jatkumon. Timer toimii, mutta Image ei rullaa. C :lla saisin ton toimimaan heti.

Olisin erittäin kiitollinen jos joku viittis laittaa vähä esimerkin tosta.

Kiitos,
C# aloittelija

2

841

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • C#:ssa kaikki muistin tyhjentäminen on automaattista. Siis jos puhutaan muistista. Se miten ohjelmasi tallentelee juttuja on toinen juttu. Mutta kun varaat muistia, niin kun et tarvitse enää tietoa, niin kielen järjestelmät tyhjentävät muistin.

      Muu kysymyksen osio oli jo niin sekavaa, että en pohdi sen sisältöä. Luulisin että teet jonkun asian tuossa väärin, sillä kokemukseni mukaan tuon minkä mainitset tekeminen c on paljon hankalampaa kuin c#:lla. Koska alussa yleensäkin mietit tuota muistin tyhjennystä, kertoo että et ole kovin kokenut c# ohjelmoija - saati kokenut ohjelmoija. Joten paneudu rajapinnan toimintaa c# kautta, älä sotke mukaan c monimutkaisia rakenteita. c# ja c ovat ihan täysin eri asia, vaikka syntaksi vähän on saman tapaista.

      • Ja C# on deconstructorit
        class Kissa
        {
        ~Kissa() // dekostrutori
        {

        }
        }


    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Sairaammaksi menee: Musk alkaa sensuroida Zelenskyin viestintää X:ssä

      IL: Musk puuttuu Zelenskyin viestintään – X:ään tulossa muutoksia "Elon Musk sanoo korjaavansa X:n, jotta käyttäjät voi
      Maailman menoa
      358
      3248
    2. Mihin sinussa haluan koskea

      Tilanne, että pääsisin tutustumaan eri kohtiin sinussa, mitä haluaisin kokeilla. Käsiin haluaisin tutustua, hieroa niitä
      Ikävä
      67
      2830
    3. Kerro nyt jotain

      Itsestäsi minkä haluaisit kaivattusi tietävän?
      Ikävä
      128
      1816
    4. On tämä meidän ikäero jo turhan suuri

      Kannattaisi tutustua samanikäisiin.
      Ikävä
      118
      1500
    5. Toisen ihmisen sydämellä

      leikkiminen on äärettömän moraalitonta. Antaa turhiaa toiveita ja sitten olla kuin mitään ei olisi tapahtunut. Kuinka vo
      Ikävä
      146
      1410
    6. Oho! Toivo Sukari paljastaa erikoisista iltatoimista Nadja-vaimon kanssa: "Hän aina putsaa mun..."

      Oho! Onpa iltatoimet tällä pariskunnalla. Toivo Sukari ja Nadja Sukari menivät naimisiin v. 2019. Lue lisää: https://
      Suomalaiset julkkikset
      30
      1333
    7. PAM:in mainos, älä mene tänään ruokakauppaan

      kannatan kovasti kaupan työntekijöille lisää liksa. MUTTA lakossa on huonoa, nyt kauppiaat näkevät kuinka vähällä henki
      Ammattiliitot
      155
      1278
    8. Mitä ajattelet kun

      Katsot kaivattuasi silmiin? Mitä näet silmissä?
      Ikävä
      72
      1137
    9. Millaisena luonteena

      Pidät kaivattuasi??
      Ikävä
      74
      1099
    10. Olen otettu, mutta turhaan kulta testailet

      Sinua minä vaan ❤️
      Ikävä
      70
      1050
    Aihe