Hver programmeringsspråk og bibliotek inneholder et spekter som en del av verktøysettet sitt . Arrays er nyttige fordi de tillater praktisk og effektiv lagring av data . Microsoft Foundation Class Library gir CArray klassen . Den kan lagre data av enhver type. CArray implementerer en skalerbar matrise som kan krympe eller vokse etter behov . Følg disse trinnene for å praktisere de mest brukte funksjonene i CArray og gjennomføre den med en gang . Du trenger Reserver på MFC som " Programming Windows med MFC " av Jeff Prosise
Microsoft Visual Studio IDE
Vis flere instruksjoner
en
Forstå klassen erklæring eller prototype som vist nedenfor. Den første parameteren , TYPE , spesifiserer hva slags objekter er lagret i og returnert av tabellen. Den andre parameteren , ARG_TYPE , indikerer type argumentet brukes for tilgang til et objekt. Ofte er ARG_TYPE en referanse til den første parameter. De med kjennskap til Standard Template Library of rene C + + vil merke MFC CArray prototypen sin likhet med at Kart- container :
mal klasse CArray : public CObject
2
vite det grunnleggende av MFC CArray . Indek er nullbasert . Det vil si , det første element ved posisjon 0 , mens det siste element er i posisjon " array_size -1. " Hvis CArray objektet er av størrelse 10, så det siste elementet er på 9. plass . Matrisen størrelse kan stilles inn, eller elementene kan legges en etter en , slik at matrisen til å vokse forbi sin nåværende størrelse . De minnetildelinger er sammenhengende som standard , inntil minnet sektor er overskredet .
3
Pre - allokere minne for matrisen . Gjør dette rett etter erklæringen . Selv om du ikke vet størrelsen matrisen vil nå , gjør en liberal estimat. Pre- tildeling forbeholder en sammenhengende (kontinuerlig ) minneområdet der array vil ligge . Når minnet har ingen diskontinuitet , rekke operasjoner er mer effektiv og kopiering og data overføringer er forhindret . For denne operasjonen , bruk " setSize ( ) "-funksjonen
4
Legge til objekter i matrisen ved å bruke " Legg til ( ) "-funksjonen som vist nedenfor : .
CArray Parr ;
pArr.Add ( CPoint ( 20, 40 ));
5
Tilgang elementer lagret i matrisen . Du kan gjøre dette gjennom " GetAt ( ) "-funksjonen , og gjennom " [ ] " operator som i alle andre arrays. " GetAt ( )" aksepterer en indeks heltall og returnerer elementet lagres på denne plasseringen. Det motsatte er " SetAt ( )" som endrer en verdi for en gitt indeks.
6
Fjerne et element fra tabellen . For dette , kan du bruke " RemoveAt ( )" eller " RemoveAll ( ) "-funksjonen . " RemoveAll ( )" tømmer CArray gjenstand for alle elementene . " RemoveAt ( )" aksepterer to innganger, et heltall indeks og antall elementer som skal fjernes starter fra dette stedet :
ugyldig RemoveAt ( int nIndex , int nCount = 1 ) ;