Arrays yog ib qho ntawm cov ntaub ntawv uas nquag siv cov ntaub ntawv khaws cia hauv chav ua haujlwm ntawm cov haujlwm. Lawv tso cai rau koj los npaj cov khoom ntawm tib hom hauv ib qho khoom uas tau txiav txim thiab tau txais kev nkag mus sai rau lawv los ntawm qhov ntsuas. Ntau zaus, thaum txhim kho cov ntawv thov nyob hauv cov lus muaj ceem haib thiab yoog raws uas tso cai ncaj qha nkag, xws li C ++, koj yuav tsum txiav txim siab qhov loj me ntawm cov khoom.
Tsim nyog
C ++ compiler
Cov Lus Qhia
Kauj ruam 1
Txiav txim siab qhov loj me ntawm array thaum sau lub sijhawm los ntawm xam nws siv tus neeg teb xov tooj sizeof. Tus tswj hwm no xa qhov nyiaj rov qab (hauv bytes) nyob ntawm qhov kev sib cav uas tau xa mus rau nws. Cov lus sib cav tuaj yeem yog ib qho sib txawv lossis ib hom qauv taw qhia. Tus neeg teb xov tooj sizeof xa rov qab qhov nyiaj tsawg ntawm qhov chaw nyob ntawm qhov khoom ntawm theem ntawm qhov kev zov me nyuam (coj mus rau hauv tus account, piv txwv li, kev teeb tsa rau kev ua tiav ntawm cov qauv teb), tab sis nws qhov kev xam yog ua nyob rau qib muab tso ua ke.
Kauj ruam 2
Txhawm rau txiav txim siab qhov loj me ntawm ib qho array siv tus neeg teb xov tooj sizeof, faib nws qhov loj tag nrho los ntawm qhov loj me ntawm ib qho. Piv txwv li, yog tias koj muaj lub ntsiab lus txuas ntxiv ntawm kev teeb tsa: int aTemp = {10, 20, 0xFFFF, -1, 16}, tom qab ntawd nws qhov loj tuaj yeem xam tau: int nSize = sizeof (aTemp) / sizeof (aTemp) [0]);
Kauj ruam 3
Kom siv tau yooj yim dua ntawm hom no, nws ua rau kev txiav txim siab txhais kom loj dua: #define countof (a) (sizeof (a) / sizeof (a [0])) Nco ntsoov tias txij li tus nqi ntawm tus neeg ua haujlwm loj tau suav los ntawm kev suav ua ke lub sij hawm, nyob rau ntawm qhov chaw, qhov twg qhov kev ua tiav tau ua tiav, cov ntaub ntawv hais txog qhov ntim ntawm qhov array thiab nws cov ntsiab lus yuav tsum muaj cov lus qhia meej. Hauv lwm lo lus, nws tsis muaj peev xwm txiav txim siab qhov ntsuas ntawm qhov tsis paub ntawm qhov loj me los ntawm nws cov lus tshaj tawm sab nraud.
Kauj ruam 4
Txiav txim siab qhov loj me ntawm cov khoom thaum lub sijhawm ua haujlwm ntawm kev pab cuam, siv cov cim paub ntawm nws txoj haujlwm. Ib qho ntawm cov txheej txheem uas tso cai khaws cia thiab xa cov ntaub ntawv nyob rau hauv daim ntawv ntawm arrays ntawm ntev ntev yog los faib qhov tshwj xeeb muaj nuj nqis rau cov paib qhia qhov ua tiav ntawm cov xov xwm txuas ntxiv. Piv txwv li, ib-byte C-style cov hlua uas yog cov cim cim yuav tsum xaus nrog tus nqi ntawm 0, ntim cov kuj sib txawv-ntev C-hlua cov kab ntawv yog xoom-tshem tawm, thiab pointer arrays yuav tsum tsis muaj haujlwm.
Kauj ruam 5
Txhawm rau txiav txim siab qhov loj ntawm ib qho qauv sawv cev nyob rau hauv txoj kev no, luam theej duab nws los ntawm keeb kwm kom txog thaum koj pom qhov txiav tawm lub caij. Txhawb kev nce qib xoom thaum lub sij hawm thaij duab. Los yog, nce tus nqi ntawm tus pointer rau ib qho khoom siv array, thiab tom qab luam tawm, suav qhov sib txawv ntawm cov taw tes mus rau tam sim no thiab thawj cov khoom.
Kauj Ruam 6
Tau txais qhov loj me ntawm cov khoom siv dynamic sawv cev los ntawm lub moj khaum lossis cov khoom siv hauv tsev qiv ntawv los ntawm kev hu mus rau nws txoj kev. Txhua chav kawm uas encapsulate ua haujlwm ntawm xws li arrays muaj txoj kev rau tau txais cov naj npawb tam sim no. Piv txwv li, std:: vector template chav ntawm lub C ++ lub tsev qiv ntawv txheem muaj qhov loj me, Qt moj khaum QVector chav kawm muaj cov suav txheej, thiab MFC chav kawm cov qauv CArray muaj ib txoj kev GetCount.