I situasjonen med matriser er den eneste måten å kopiere en matrise til en annen å bruke en iterativ tilnærming, som innebærer å kjøre en loop og kopiere hvert element på passende indeks. Heldigvis inkluderer vektorklasser mange måter å kopiere en hel vektor til en annen på en mer praktisk måte.
Kopiering av en vektor innebærer å lage en ny vektor som har en kopi av alle komponentene i den opprinnelige vektoren i samme rekkefølge.
Eksempel 1: STD :: kopimetode for å kopiere vektor i C++
Std :: kopien er en innebygd funksjon for å kopiere elementer av den ene vektoren til den andre. Forsikre deg imidlertid om at målvektoren har nok plass til å holde alle den opprinnelige sekvensens komponenter.
Programmet har overskriftsdelen med de nødvendige filene. Først har vi iostream -filen; Deretter har vi en vektorfil, en standard innebygd bibliotekfil i C++. Gjennom dette biblioteket kan vi bruke vektorer i programmet. Deretter har vi en algoritmeoverskriftsfil for å kopiere elementer av vektorer. Vi har også tatt med iteratorfilen i programmet, som lar oss få tilgang til elementene i vektorene.
Nå har vi hovedfunksjonen der vi har erklært en variabel som "VEC1" av vektortype og initialisert den med heltallsarrayen. Deretter har vi erklært en annen vektortypevariabel som "VEC2". Deretter påberopte kopifunksjonen, som kopierer alle elementene i “VEC1” til “VEC2”. Begynnende () -funksjonen tar den første vektor iteratoren, slutt () -funksjonen tar den siste vektor iteratoren, og Back_Insertor setter her inn elementene fra baksiden.
Så har vi for sløyfetilstand, som løkker syklusen over hvert element som er lagret i “VEC1” og skriver ut elementene. Det samme er tilfellet for "VEC2" -elementer; Det itererer også gjennom for -sløyfesyklusen og vil skrive ut på hurtigskjermen.
#inkludereUtgangen ovenfor viser at vektoren ble kopiert til den andre vektoren.
Eksempel2: Tildel () -metode for å kopiere vektor i C++
Et annet alternativ er å bruke vektorklassens offentlige medlemsmetode tilordne (), som erstatter vektorelementene med elementer fra det definerte området.
Vi har inkludert alle nødvendige filer i overskriftsdelen, som lar oss få tilgang til vektorelementene, kopiere vektorelementet og også la oss bruke vektorer i programmet. I tillegg er navneområdet STD -filen inkludert i programmets overskrift.
Neste trinn påkaller hovedfunksjonen der programgjennomføringen er gjort for utførelse. Først har vi definert en variabel vektortype "A" som lagrer heltall i et matrisermønster. Deretter har vi en annen variabel, “B” også av vektortype.
Etter å ha definert variabelen, har vi brukt Assign () -metoden, som returnerer iteratoren som peker til den første og den siste vektoren “A”. Tildelingsmetoden kopierte vektoren “A” elementer til vektoren “B” -elementer. Nå brukes for -loopen til å iterere over vektoren "A" -elementer og vil skrive ut elementene i vektoren "A". For -loopen brukes også til iterasjonen på vektor "B" -elementer og viser disse elementene gjennom Cout -kommandoen.
#inkludereVektoren kopieres til den andre vektoren. Derfor kan vi også bruke tildelingsfunksjonen i C ++ for å kopiere vektorelementer til de andre elementene i vektoren.
Eksempel 3: Tildelingsoperatørmetode for å kopiere vektor i C++
En vektor kan også kopieres til en annen vektor med tildelingsoperatøren. Årsaken til at en slik oppdragsoperatør fungerer er at den bare overskriver de eksisterende medlemmene hvis noen av disse er tilgjengelige, ellers tildeler varen der den er kopiert.
Det første trinnet har inkludert viktige filer i overskriftsdelen som kreves for dette programmet. Vi har også et navneområde STD -fil for å bruke sin funksjon i programmet. Deretter har vi hovedfunksjonen der vi har erklært to variabler, “Vector1” og “Vector2” av vektortype. Bare “Vector1” initialiseres med heltallsarrayen.
Nå har vi en tildelingsoperatør (=) som kopierer “Vector1” -elementene til “Vector2” -elementene ved å plassere “=” -operatøren mellom “Vector1” og “Vector2”. For -loopen brukes til iterasjonen over både de gitte vektorene og skriver ut elementene som er til stede i de spesifiserte vektorene gjennom cout -objektet.
#inkludereVector1 -elementene kopieres til Vector2 -elementene som vist i følgende hurtigskjerm.
Eksempel 4: Konstruktørmetode for å kopiere vektor i C++
Når en vektor er deklarert, kopierer du en eksisterende initialisert vektor, kopierer elementene til den gitte vektoren til den nylig deklarerte vektoren. Vi må gi en kildevektor til destinasjonsvektoren som konstruktør, som deretter vil bli kalt kopikonstruktøren.
Fra og med toppseksjonen har vi noen standard innebygde bibliotekfiler med C ++ som er nødvendige for dette programmet. Hovedfunksjonen påberopes deretter der vi har erklært en vektortypevariabel som "P". Variabelen “P” inneholder rekke heltall. Deretter erklærer en ny vektor som “P” og passerer et element fra en eksisterende vektor “P” i konstruktørmetoden.
Gjennom konstruktørmetoden kopieres vektoren “P” -elementene til vektoren “Q”. For -loopen brukes til både vektorene “P” og “Q” og vil bli skrevet ut på den hurtige skjermen til Ubuntu.
#inkludereDerfor blir elementene kopiert fra den gamle vektoren “P” til den nye vektoren “Q” på følgende skjerm.
Konklusjon
Vi lærte om mange metoder for å kopiere en vektor til en ny vektor. Vi har brukt fire forskjellige tilnærminger for å kopiere vektorer i C++. Disse tilnærmingene inkluderte Std :: kopimetode, tilordne metode, oppgavoperatørmetode og en passerende kildevektor som konstruktør. Med de velprøvde resultatene av disse metodene som brukes i programmet, har vi kopiert elementene i de eksisterende vektorelementene til den nydannede vektoren i programmeringsspråket C ++.