Forskjellen mellom generisk og ikke-generisk samling i C

Innholdsfortegnelse:

Forskjellen mellom generisk og ikke-generisk samling i C
Forskjellen mellom generisk og ikke-generisk samling i C

Video: Forskjellen mellom generisk og ikke-generisk samling i C

Video: Forskjellen mellom generisk og ikke-generisk samling i C
Video: The Sims Mobile Level 60! MAX LEVEL - What to expect and the state of my game! 2024, November
Anonim

Nøkkelforskjell – Generisk vs ikke-generisk samling i C

En generisk samling er en klasse som gir typesikkerhet uten å måtte avledes fra en basissamlingstype og implementere typespesifikke medlemmer. En ikke-generisk samling er en spesialisert klasse for datalagring og gjenfinning som gir støtte for stabler, køer, lister og hashtabeller. Hovedforskjellen mellom generisk og ikke-generisk samling i C er at en generisk samling er sterkt skrevet mens en ikke-generisk samling ikke er sterkt skrevet.

Hva er generisk samling i C?

De ikke-generiske samlingene som ArrayList, Queue, Stack, etc.kan lagre elementer av forskjellige datatyper. Når du henter elementene, skal programmereren skrive caste dem til riktig datatype. Ellers kan det forårsake et kjøretidsunntak. De generiske samlingsklassene kan brukes til å løse dette problemet. Generiske samlinger lagrer elementer internt i arrays av deres faktiske typer. Typestøping er derfor ikke nødvendig. De kan brukes til å lagre elementer av den angitte typen eller typene. Noen generiske samlingsklasser er List, Dictionary, SortedList, HashSet, Queue, Stack.

Forskjellen mellom generisk og ikke-generisk samling i C
Forskjellen mellom generisk og ikke-generisk samling i C

The GenericList inneholder elementer av spesifisert type. Det kan øke listen tilsvarende når du legger til elementer. Når det er en setning som følger, skal alle elementene som kan lagres i liste1 være heltall, Listeliste1 – ny liste ();

The Generic Dictionary i C er en samling nøkler og verdier. Når det er en setning som følger, kan objektordboken1 lagre int-typenøkler og strengtypeverdier.

Dictionary dictionary1=ny ordbok ();

En generisk SortedList-samling lagrer nøkkel- og verdipar i stigende rekkefølge etter nøkkel som standard. Eksemplet nedenfor lagrer nøkkel av int-type og verdien av strengtype.

SortedList s0=ny SortedList ();

Dette er noen få eksempler for Generic Collection i C. Disse samlingene kan lagre flere verdier av de angitte datatypene. Så de er sterkt skrevet.

Hva er ikke-generisk samling i C?

Arrays kan brukes til å lagre flere elementer. En ulempe er at den kan lagre elementer av samme datatype. Det er klasser i C som kan brukes til å lagre mange verdier eller objekter kjent som samlinger. Samlinger hjelper deg med å lagre, oppdatere, slette, søke, sortere objekter. Størrelsen på samlingen kan økes eller reduseres dynamisk.

Noen ikke-generiske samlingsklasser er ArrayList, SortedList, Stack, Queue og HashTable. Hver samlingsklasse implementerer IEnumerable-grensesnittet. Det hjelper å iterere gjennom elementene i elementene i samlingen ved å bruke foreach loop.

ArrayList er et alternativ til en matrise. Hvis det er en matrise som kan lagre 10 elementer, kan den ikke lagre 20 elementer. Hvis matrisen initialisert til 10 elementer, men bare lagrer 5 elementer, er resten ikke brukt. Derfor er en matrise fikset. I en ArrayList er det mulig å legge til eller fjerne elementer avhengig av indeksen. Den tillater dynamisk minneallokering. Sorteringsmetoden kan brukes til å sortere elementene i stigende rekkefølge.

HashTable brukes til å representere en samling nøkkelverdipar. De er organisert basert på hashkoden til nøkkelen. Derfor har hvert element et nøkkelverdipar. Nøkkelen kan brukes til å få tilgang til et bestemt element i samlingen. Stakken representerer den siste inn, først ut tilgang til elementer. Køen brukes for først inn først ut tilgang til elementer. Dette er noen av de ikke-generiske samlingene som støttes av C. Disse samlingene kan lagre elementer av forskjellige typer.

Hva er likheten mellom generisk og ikke-generisk samling i C?

Både generisk og ikke-generisk samling kan brukes til å lagre flere elementer i C

Hva er forskjellen mellom generisk og ikke-generisk samling i C?

Generisk vs ikke-generisk samling i C

En generisk samling er en klasse som gir typesikkerhet uten å måtte avledes fra en basissamlingstype og implementere typespesifikke medlemmer. En ikke-generisk samling er en spesialisert klasse for datalagring og gjenfinning som gir støtte for stabler, køer, lister og hashtabeller.
Navneområde
The Generic Collection-klassene er i systemet. Samlinger. Generisk navneområde. Non-generic Collection-klassene er i systemet. Samlingers navneområde.
Type
En generisk samling er sterkt skrevet. En ikke-generisk samling er ikke sterkt skrevet.
Lagringselementer
The Generic Collections lagrer elementer internt i arrays av deres faktiske typer. De ikke-generiske samlingene lagrer elementer internt i objektmatriser slik at de kan lagre alle typer data.

Sammendrag – Generisk vs ikke-generisk samling i C

Denne artikkelen diskuterte forskjellen mellom generisk og ikke-generisk samling i C. Forskjellen mellom generisk og ikke-generisk samling er at en generisk samling er sterkt skrevet mens en ikke-generisk samling ikke er sterkt skrevet.

Anbefalt: