[elektro] C makró
hobilobi at gmail.com
hobilobi at gmail.com
Fri Nov 18 21:06:28 CET 2016
2016.11.18. 15:12 keltezéssel, Balla Zoltán írta:
> 2016.11.18. 15:06 keltezéssel, hobilobi at gmail.com írta:
>> Az eredeti kérdésben nem ez volt.
>> Te valójában nem egy darab kétdimenziós tömböt foglalsz le, hanem
>> egyesével, sok egydimenzióst.
>> Ez azért egészen más !!
>>
>> Foglalj le egy lépésben akkora helyet, amiben majd elfér a kétdimenziós
>> tömböd, és a kezdőcímét
>> felhasználva te kezeld, hogy mikor hová pakolsz/olvasol.
>>
> De ez volt..., mivel ez a "hivatalos" módja a többdimenziós dinamikus
> foglalásnak, nem az X*Y méretű nagy tömb foglalása, és kézzel történő
> adminisztrálása! Csak nekem nem jó, ha nem összefüggő területen
> helyezkedik el...
>
> Nyilván ez marad, mert egyelőre más módot nem ismerek, amivel
> egybefüggő memóriába kerülnének a sorok..., csak gondoltam hátha van
> rá valami elegánsabb megoldás is...
>
> Zoli
>
> -----------------------------------------
> elektro[-flame|-etc]
Nem ismerem a new operátort (illetve a C++-t), de ha valóban ez a
"hivatalos" módi, akkor viszont annak garantálnia kellene a
folytonosságot. Ellenkező esetben valaminek gondoskodnia kellene arról,
hogy ha te a tömb [x2,y5] elemére hivatkozol, akkor a nem összefüggő
területen tárolás ellenére is, ki tudja számolni az adott elem címét. Ez
sokkal macerásabbnak tűnik, mint garantálni a folyamatos területen tárolást
A folytonosság biztosításához pedig a new-nak kell lennie egy olyan
paraméterének, ami megmondja, hogy melyik előzőleg létrehozott tömböt
akarod bővíteni, mert különben az 5. híváskor honnan tudná, hogy a 2.
vagy a 4. híváskori tömböt akarod növelni. Ha van ilyen paraméter, akkor
szerintem folytonos területen fogja tárolni.
István
More information about the Elektro
mailing list