CyfrifiaduronRhaglennu

Mae amrywiaeth deinamig a'i nodweddion

Array Cyfeirir yn gyffredinol fel set archebu o elfennau teipio pob un yn cael rhai (yr un peth). Araeau yn statig a deinamig. hyd cyntaf a bennir yn gam, hy, rhaglennu cyn dechrau'r rhaglen ar gyfer gweithredu, yr ail - yn ystod gweithredu.
Am amrywiaeth statig yn y disgrifiad gael ei benderfynu nifer o elfennau na ellir eu newid (cynnydd neu ostyngiad) yn ystod y rhaglen. Pan fydd y rhaglen yn dechrau, gan ddefnyddio amrywiaeth sefydlog ar gyfer gweithredu mewn cof nifer o bytes a ddyrennir i storio ei elfennau. Bydd y swm o gof yn cael ei neilltuo i'r rhaglen cyn belled â'i fod wedi gorffen ei waith. Hyd yn oed os nad yw cof yn cael ei ddefnyddio, ni fydd unrhyw cod arall yn gallu cael mynediad iddo.
Gall iaith raglennu Pascal ond yn gweithio gyda arrays statig. Felly, os ydych chi eisiau gweithio gyda dilyniant o hyd amrywiol, mae'n bosibl disgrifio strwythur, er enghraifft, allan o gant elfen, ac yn eu defnyddio ar wahanol gamau o nifer wahanol o elfennau, nad yw'n fwy na'r rhif 100. Ac mae'n sicr yn annoeth.
Nid yw'r broblem yn bodoli yn yr integredig amgylchedd datblygu o Delphi. Mae amrywiaeth deinamig yn caniatáu ar gyfer nad yw'r disgrifiad yn nodi nifer o elfennau, a phenderfynu ei Rhedeg. Gall amrywiaeth deinamig yn cael eu disgrifio yn adran Var, fel a ganlyn:
Var anferth: amrywiaeth o gyfanrif

Felly, y strwythur, dynodwr enfawr dynodedig, yn ddilyniant llinol o gyfanrif anhysbys (hyd yn hyn) o hyd. Er mwyn gosod y maint, rhaid i'r rhaglen wneud cais drefn SetLength, er enghraifft, SetLength (Massive, 9). caffael Massive dimensiwn amrywiaeth deinamig hafal i nifer 9. Yn awr, penderfynir bod yn y dilyniant mae naw elfennau o gyfanrif math, rhifo o sero. Mae'r nodweddion hyn yn cael amrywiaeth deinamig. Delphi yn weithdrefn rhyddhau cof set o rifau, lle mae'r angen am mae storio diflannu. Mae'r weithdrefn hon Cwblhau, yn ein hachos ni, bydd yn cael ei gymhwyso fel a ganlyn: Cwblhau (anferth).

Yn yr un modd, gall un yn disgrifio ac yn cymhwyso arrays deinamig aml-ddimensiwn yn Delphi. Er enghraifft, bydd dau ddimensiwn strwythur dynamig cael ei ddisgrifio fel a ganlyn:
Var anferth: amrywiaeth o amrywiaeth o gyfanrif
Os bydd angen, gall y colofnau fod o wahanol hyd. Mae hefyd yn cael ei nodi gweithdrefn SetLength.

Yn aml, yn enwedig mewn rhaglenni mawr a chymhleth, mae rhai strwythurau data yn cael eu defnyddio o bryd i'w gilydd, neu dim ond ar ddechrau / diwedd y rhaglen. Ei fod yn "wrth gefn" yn wastraffus iawn i gadw mewn cof. Mae amrywiaeth deinamig - un ffordd o ddyraniad rhesymol o adnoddau y system gyfrifiadurol. Er ei fod ganddo rai anfanteision. Yn gyntaf, nid yw bob amser elfennau rhifo cyfleus o'r dechrau. Yn ail, dylai'r rhaglennydd eu deall bob amser ym mhob man y cod, cyflwr yr amrywiaeth deinamig. Ond mae ei fanteision gwneud hurt yr holl anawsterau hyn. Yn benodol, os ydych chi am anfon allan nifer fawr o is-reolwaith data, ni all wneud heb y dull deinamig o gynrychiolaeth.

Similar articles

 

 

 

 

Trending Now

 

 

 

 

Newest

Copyright © 2018 cy.delachieve.com. Theme powered by WordPress.