*   >> Lese Utdanning Artikler >> science >> programming

Assosiativ Container i C ++ Simplified

assosiativ Container i C ++ forenklet Innledning En container er en instansiert objekt, som har en liste (array) som sin grunnleggende funksjon. I motsetning til en rekke liste, kan en container vokse eller krympe i størrelse (lengde). Forskjellige beholdere har forskjellige egenskaper og metoder. Det finnes to typer container klasser, kalt Sekvenser og assosiativ Containere. I denne artikkelen presentere jeg deg til en tutorial serie på C ++ Associative Containere. Jeg har skrevet en annen serie for Beholdere Sequence, som jeg foreslår at du leser før du leser dette.

Forskjellen mellom Container Sequence og Associative Container Den største forskjellen mellom en Containere Sequence og en assosiativ Container er at en beholder sekvens (vektor) bruker en indeks for å få tilgang til element verdi, mens den assosiative container (Map) bruker en nøkkel (tekst) for å få tilgang elementet verdi. Begrensninger av Array Tenk deg at du vil slette element i en C ++ array. Det er ikke mulig. Du kan sette verdien av et C ++ array til NULL, men du kan ikke slette elementet. Tenk deg at du vil legge til et element (med verdi) til toppen av tabellen. Det er ikke mulig.

Tenk deg at du vil legge til et element (med verdi) til bunnen av en matrise. Det er ikke mulig med C ++ matrisen. Disse og andre krav er nødvendig i moderne programmer. Løsning av begrensninger i C ++ Array På grunn av begrensningene ovenfor, C ++ kom opp med sekvensene og assosiative containere. Det finnes forskjellige former av assosiative beholderen. En av dem kalles, kart vil løse de ovennevnte problemene og mer. Hver assosiativ container har sine fordeler og ulemper. C ++ er et komplett språk. Ingenting er egentlig utelatt.

Hvis du har studert et språk som Javascript, ville du ha lagt merke til at sitt utvalg er faktisk et objekt, som løser de ovennevnte problemer med metoder. C ++ matrisen er ikke et objekt i streng forstand av ordet. Men i C ++, de assosiative containere er objekter. C ++ er et gammelt språk og så det nærmet seg dette problemet fra en opprinnelig synspunkt. Etter min mening, forfatterne (oppfinnere) av noen av de nye språkene fikk sin inspirasjon fra C ++. Så kom de opp med kompromisser.

De stokk opp med arrays som er objekter, som vil gjøre noen av de tingene som C ++ containere gjøre, men ikke alle. Faktisk har Javascript i særdeleshet ikke har noen tilsvarende den assosiative beholderen. La meg påpeke her at Javascript ikke ble skrevet for samme formål som C ++; kanskje de

Page   <<       [1] [2] >>
Copyright © 2008 - 2016 Lese Utdanning Artikler,https://utdanning.nmjjxx.com All rights reserved.