Initialiser en vektor i C++ (7 forskellige måder)
Følgende er forskellige måder at konstruere eller initialisere en vektor i C++ STL
1. Initialisering ved at skubbe værdier én efter én:
C++
// C++ program to create an empty> // vector and push values one> // by one.> #include> #include> using> namespace> std;> > int> main()> {> > // Create an empty vector> > vector <> int> >bære> > > vect.push_back(10);> > vect.push_back(20);> > vect.push_back(30);> > > for> (> int> x : vect)> > cout < < x < <> ' '> ;> > > return> 0;> }> |
Produktion
10 20 30
2. Angivelse af størrelse og initialisering af alle værdier:
C++
// C++ program to create an empty> // vector and push values one> // by one.> #include> #include> using> namespace> std;> > int> main()> {> > int> n = 3;> > > // Create a vector of size n with> > // all values as 10.> > vector <> int> >vect(n, 10);> > > for> (> int> x : vect)> > cout < < x < <> ' '> ;> > > return> 0;> }> |
Produktion
10 10 10
3. Initialisering af lignende arrays:
C++
// C++ program to initialize> // a vector like an array.> #include> #include> using> namespace> std;> > int> main()> {> > vector <> int> >bar {10, 20, 30};> > > for> (> int> x : vect)> > cout < < x < <> ' '> ;> > > return> 0;> }> |
Produktion
10 20 30
4. Initialisering fra et array:
C++
// C++ program to initialize> // a vector from an array.> #include> #include> using> namespace> std;> > int> main()> {> > int> arr[] = { 10, 20, 30 };> > int> n => sizeof> (arr) /> sizeof> (arr[0]);> > > vector <> int> >vect(arr, arr + n);> > > for> (> int> x : vect)> > cout < < x < <> ' '> ;> > > return> 0;> }> |
Produktion
10 20 30
5. Initialisering fra en anden vektor:
C++
// C++ program to initialize a vector from> // another vector.> #include> #include> using> namespace> std;> > int> main()> {> > vector <> int> >vect1{ 10, 20, 30 };> > > vector <> int> >vect2(vect1.begin(), vect1.end());> > > for> (> int> x : vect2)> > cout < < x < <> ' '> ;> > > return> 0;> }> |
Produktion
10 20 30
6. Initialisering af alle elementer med en bestemt værdi:
C++
// C++ Program to initialize vector using fill()> #include> #include> using> namespace> std;> > int> main()> {> > // creating array with size 10> > vector <> int> >vect1(10);> > > // initializing using fill() function> > int> value = 5;> > fill(vect1.begin(), vect1.end(), value);> > > // printing vector> > for> (> int> x : vect1)> > cout < < x < <> ' '> ;> > > return> 0;> }> |
Produktion
5 5 5 5 5 5 5 5 5 5
7 . Initialiser en matrix med fortløbende tal ved hjælp af std::iota :
C++
// C++ program to initialize a> // vector with consecutive> // numbers> #include> #include> #include> using> namespace> std;> > int> main()> {> > // declaring a vector with size 5> > vector <> int> >ting(5);> > > // initializing using iota()> > iota(vec.begin(), vec.end(), 1);> > > // printing the vector> > for> (> int> i = 0; i <5; i++) {> > cout < < vec[i] < <> ' '> ;> > }> > return> 0;> }> |
Produktion
1 2 3 4 5
Tidskompleksitet: O(N), hvor N er størrelsen af vektoren.
Hjælpeplads: PÅ).