//
// main.cpp
// Exp
//
// Created by Manish on 07/11/19.
// Copyright © 2019 Manish. All rights reserved.
//
#include <iostream>
#include <vector>
#include<algorithm>
using namespace std;
int main(int argc, const char * argv[]) {
//1
//copy**************************************************
vector<string> sourceA={"a","b","c","d","e","f","g","h"};
vector<string> dest={"A","B","C","D","E","F","G","H"};
//copy a to d and replace A to D in dest
copy(sourceA.begin(), sourceA.begin()+4, dest.begin());
for(auto x:dest)
{
cout<<x<<endl;
}
cout<<"---------------------"<<endl;
//2
//copy if**********************************************//get only two element which is greator than 10
vector<int> vectorB={2,4,6,8,10,12,14,16,18,20};
vector<int> result={0,0};
copy_if(vectorB.begin(), vectorB.end(), result.begin(), [](int x){
return x>10;
});
for(auto x:result)
{
cout<<x<<endl;
}
cout<<"---------------------"<<endl;
//3
//copy_n copy but second parameter is how many items you want to copy from source to destination
vector<string> sourceN={"a","b","c","d","e","f","g","h"};
vector<string> destN={"A","B","C","D","E","F","G","H"};
//copy first three item in destination
copy_n(sourceN.begin(), 3, destN.begin());
for(auto x:destN)
{
cout<<x<<endl;
}
cout<<"---------------------"<<endl;
//4
//copy backwards
vector<int> vectorBC={1,2,3,4,5,7};
vector<int> resultBC={10,20,30,40,50,60,70};
//copy element from source to destination from backwards
copy_backward(vectorBC.begin(), vectorBC.begin()+3, resultBC.end()-1);
for(auto x:resultBC)
{
cout<<x<<endl;
}
cout<<"---------------------"<<endl;
}
copy and run the above all example are running example
Comments
Post a Comment