Při složitém programování člověk často potřebuje zkopírovat pole nebo vytvořit nové pole s téměř vším, co bylo použito v předchozím poli, lze to provést ručně, ale je to časově náročný proces. Pokud tedy hledáte funkci, která může kopírovat za vás, postupujte podle pokynů v tomto článku.
Existuje v C++ funkce kopírování pro kopírování pole
Ano, C++ má funkci pro kopírování pole a lze ji použít v jakémkoli kódu C++. Ale nezapomeňte, že chcete použít funkci kopírování, soubor záhlaví '
Syntaxe pro použití funkce kopírování je uvedena níže:
Syntax
V syntaxi jsou argumenty funkce kopírování pole, která je třeba zkopírovat, a cíl pole:
std::copy ( První, poslední , výsledek )
Funkce copy() má tři parametry:
-
- první pole, odkud budou prvky zkopírovány
- last- ukazuje poslední index pole na místo, kam chceme zkopírovat prvky
- result- Ukazuje nové pole, kam chceme zkopírovat prvky
Jak používat funkci copy() v kódu C++
Úplný proces kopírování pole pomocí kopírovat() funkce je popsána v níže uvedených krocích:
Krok 1 : Nejprve importujte hlavičkové soubory jako vždy pro jakýkoli kód C++, nezapomeňte, že je třeba je použít kopírovat() funkce,
#include
Krok 2: Poté spusťte hlavní funkci (), veškerý hlavní kód bude uvnitř této hlavní funkce:
{
vrátit se 0 ;
}
Krok 3: Nyní vytvoříme pole, které v následujících krocích zkopírujeme pomocí příkazu copy. Zde jsem své pole pojmenoval jako org[ ] k reprezentaci původního pole můžete také použít jakýkoli jiný název. Moje pole má 7 prvků, takže jsem také deklaroval proměnnou n=7 který je měnitelný v závislosti na počtu prvků uvnitř pole:
int org [ ] = { 2 , 9 , 8 , 1 , 3 , 6 , 3 } ;
Krok 4: Nyní jsem definoval pole dest[ ], což je pole, kam bude zkopírováno pole org[ ]. Poté konečně použijte funkci kopírování, první argument je původní pole, druhý je pole + n (což je velikost pole), nakonec dest, což je pole, do kterého budou zkopírovány všechny prvky:
std::copy ( org, org+n, cíl ) ;
Krok 5 : Nyní spuštěním cyklu for vytisknu pole. Níže uvedená smyčka for je kopírování pole org:
pro ( int i = 0 ; i < n; i++ )
std::cout << org [ i ] << ' ' ;
std::cout << '\n' ;
Krok 6 : Podobně pro tisk zkopírovaného pole jsem použil další smyčku for:
std::cout << 'Kopie pole:' ;pro ( int i = 0 ; i < n; i++ )
std::cout << Start [ i ] << ' ' ;
std::cout << '\n' ;
Poznámka: Pouze jsem vytiskl/zobrazil obě pole jen pro pochopení, ale není to povinné.
Kompletní kód je uveden níže:
Kód
#include#include
int main ( ) {
const int n = 7 ;
int org [ ] = { 2 , 9 , 8 , 1 , 3 , 6 , 3 } ;
int dest [ n ] ;
std::copy ( org, org+n, cíl ) ;
std::cout << 'Původní pole:' ;
pro ( int i = 0 ; i < n; i++ )
std::cout << org [ i ] << ' ' ;
std::cout << '\n' ;
std::cout << 'Kopie pole:' ;
pro ( int i = 0 ; i < n; i++ )
std::cout << Start [ i ] << ' ' ;
std::cout << '\n' ;
vrátit se 0 ;
}
Nyní spusťte kód k zobrazení výstupu a k ověření, že je pole úspěšně zkopírováno:
Výstup
Závěr
Ano, existuje kopírovat() funkce v C++ pro kopírování polí. Použít kopírovat() funkce stačí zahrnout