#include <iostream>
#include <vector>
int main() {
// Step 1: Declare an empty vector of integers
std::vector<int> myVector;
// Step 2: Initialize the vector with a specified size and default values
std::vector<int> initializedVector1(5);
// Step 3: Initialize the vector with a specified size and a specific value for each element
std::vector<int> initializedVector2(5, 10);
// Step 4: Initialize the vector using an initializer list
std::vector<int> initializedVector3 = {1, 2, 3, 4, 5};
// Step 5: Initialize the vector by copying elements from another vector
std::vector<int> copiedVector(initializedVector3);
// Step 6: Initialize the vector by moving elements from another vector
std::vector<int> movedVector(std::move(initializedVector2));
// Step 7: Initialize the vector using iterators
int array[] = {6, 7, 8, 9, 10};
std::vector<int> iteratedVector(array, array + sizeof(array) / sizeof(int));
// Displaying the contents of vectors for verification
for (const auto& elem : initializedVector1)
std::cout << elem << ' ';
std::cout << '\n';
for (const auto& elem : initializedVector2)
std::cout << elem << ' ';
std::cout << '\n';
for (const auto& elem : initializedVector3)
std::cout << elem << ' ';
std::cout << '\n';
for (const auto& elem : copiedVector)
std::cout << elem << ' ';
std::cout << '\n';
for (const auto& elem : movedVector)
std::cout << elem << ' ';
std::cout << '\n';
for (const auto& elem : iteratedVector)
std::cout << elem << ' ';
std::cout << '\n';
return 0;
}