De hovedforskjell mellom ny og slette operatør i C ++ er det ny brukes til å tildele minne for en gjenstand eller en matrise mens sletting brukes til å allokere minnet som er tildelt ved hjelp av den nye operatøren.
Det finnes to typer minne som statisk og dynamisk minne. Anta en uttalelse som int a; int array [10]; programmøren vet allerede hvor mye minne disse variablene krever. Dette minnet er et statisk minne. Noen ganger er det vanskelig å bestemme hvor mye minne det tar å lagre data. Derfor bør minnet bestemmes ved kjøretid. Denne typen minne er et dynamisk minne. Vi bruker nye og slette operatører i disse situasjonene.
1. Hva er ny operatør i C++
- Definisjon, funksjonalitet
2. Hva er slettoperatør i C++
- Definisjon, funksjonalitet
3. Hva er forskjellen mellom ny og slett operatør i C++
- Sammenligning av nøkkelforskjeller
C + +, slett Operatør, Memory Allocation, ny operatør
Den nye operatøren tildeler minne. Se underprogrammet nedenfor.
Figur 1: C ++ program 1 med ny operatør
I henhold til det ovennevnte programmet er ptr et heltalstype peker. I linje 7 peker ptr til int type minne. I linje 8 peker verdien ptr til 10. Utskrift * p vil gi verdien 10.
På samme måte er det mulig å lage arrays ved hjelp av nye som følger.
Figur 2: C ++ program 2 med ny operatør
I henhold til det ovennevnte programmet er ptr en heltalltypepeker. I linje 8 pter ptr til minnet av int-typen som kan lagre 5 heltallelementer. Deretter lagres heltallverdiene i arrayet. Til slutt, for loop iterates gjennom arrayet og vil skrive ut verdiene.
Videre er det mulig å lage nye gjenstander ved hjelp av den nye operatøren. Se eksemplet nedenfor.
Figur 3: C ++ program 3 med ny operatør
Klassen er Student, og den har konstruktøren. I hovedprogrammet er ptr en student type peker. I linje 13 kalles konstruktøren. Derfor er et Student type objekt opprettet. Cout-setningen i Studentkonstruksjonen utfører, og at utsagnet vises på konsollen.
Slett operatøren bidrar til å allokere minne. Se underprogrammet nedenfor.
Figur 4: C ++ program 1 med slett operatør
I det ovennevnte programmet er ptr en int type peker. I linje 7 peker den på int type minne mens du er i linje 8, blir den gitt verdien 10. Dessuten slettes ptr i linje 11.
Figur 5: C ++ program 2 med slett operatør
I henhold til det ovennevnte programmet er ptr en heltalltypepeker. I linje 8 pter ptr til minnet av int type, som kan lagre 2 heltallelementer. Deretter lagres heltallverdiene i arrayet. I linje 12 slettes ptr. Slett operatøren avallokerer minnet.
Kort sagt, ny er en operatør i C ++ som tildeler minne for en gjenstand eller en rekke objekter. I motsetning er sletting en operatør i C ++ som deallokerer en blokk med minne tidligere tildelt for et objekt opprettet ved hjelp av den nye operatøren. Disse definisjonene inneholder hovedforskjellen mellom ny og slett operatør i C++.
Videre hjelper ny operatør til å allokere minne for en matrise eller en objekt, mens slette operatør bidrar til å allokere det tildelte minnet til en bestemt gjenstand eller en matrise. Derfor er dette en annen forskjell mellom ny og slett operatør i C++.
Den grunnleggende forskjellen mellom ny og slett operatør i C ++ er den nye brukes til å allokere minne for en gjenstand eller en array mens sletting brukes til å allokere det tildelte minnet ved hjelp av den nye operatøren.
1. Ny operatør i C - 47, Codearchery, 6. mars 2017, tilgjengelig her.
2. Slett operatør i C - 48, Codearchery, 22. mars 2017, Tilgjengelig her.