Currently when I have to use vector.push_back()
multiple times.
The code I'm currently using is
std::vector<int> TestVector; TestVector.push_back(2); TestVector.push_back(5); TestVector.push_back(8); TestVector.push_back(11); TestVector.push_back(14);
Is there a way to only use vector.push_back()
once and just pass multiple values into the vector?
vector insert() function in C++ STL std::vector::insert() is a built-in function in C++ STL which inserts new elements before the element at the specified position, effectively increasing the container size by the number of elements inserted.
Yes it is possible to hold two different types, you can create a vector of union types. The space used will be the larger of the types.
You can do it with initializer list:
std::vector<unsigned int> array; // First argument is an iterator to the element BEFORE which you will insert: // In this case, you will insert before the end() iterator, which means appending value // at the end of the vector. array.insert(array.end(), { 1, 2, 3, 4, 5, 6 });
Try pass array to vector:
int arr[] = {2,5,8,11,14}; std::vector<int> TestVector(arr, arr+5);
You could always call std::vector::assign to assign array to vector, call std::vector::insert to add multiple arrays.
If you use C++11, you can try:
std::vector<int> v{2,5,8,11,14};
Or
std::vector<int> v = {2,5,8,11,14};
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With