Kirjautuminen

Haku

Tehtävät

Keskustelu: Ohjelmointikysymykset: C++: ohjelman koko

KemXy [21.05.2003 14:50:56]

#

Tein ohjelman, jossa lasketaan aluksi taulukoihin trigonometristen funktioiden arvoja tietyin välein(n. 0.15 astetta eli 2400 arvoa/funktio). Taulukot ovat float tyyppisiä. Ennen ohjelman koko oli 29 kt, mutta taulukoiden määrittelyn jälkeen koko olikin yli 80kt. Lähdekoodeista ei tule kuin n. 5 kt ja headereita ei ole lisätty välissä.

Kasvaako ohjelman exe:n koko, kun jossain lähdekooditiedostoista määritellään suuria taulukoita?

thefox [21.05.2003 18:01:17]

#

Riippuu missä ne määrittelet. Jos vetäiset ne pinosta niin ei kasva (toisaalta tuollaisessa prekalkulaatiossa tuskin vetäiset niitä pinosta...), jos taas teet niistä globaaleja, kasvaa. Mitä ikinä sitten käytätkin, kannattanee mieluummin tehdä tavallinen pointteri ja sitten new:illä varata kasasta (heap, hmm siis onko se suomeksi kasa?) tarpeen mukaan.. itse en suosi hirveän suurten taulukkon repimistä pinosta.

float* precalced_stuff;
precalced_stuff = new float[2400]; // tai paljon sitten tarvitsetkaan
// käytetään tavaraa
delete[] precalced_stuff; // vapautetaan muisti

mikko [21.05.2003 21:29:55]

#

lainaus:

heap, hmm siis onko se suomeksi kasa?

Taitaa olla "keko".

thefox [23.05.2003 12:17:39]

#

Juu.. näinhän se on. Tulee niin vähän suomenkielisiä termejä käytettyä että ne unohtuvat melko helposti :)

Vastaus

Aihe on jo aika vanha, joten et voi enää vastata siihen.

Tietoa sivustosta