C++ Vectors
C++ Vectors
HTML
CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C
C++ Vectors
❮ Previous Next ❯
C++ Vector
A vector in C++ is like a resizable array.
Both vectors and arrays are data structures used to store multiple elements of the
same data type.
The difference between an array and a vector, is that the size of an array cannot be
modified (you cannot add or remove elements from an array). A vector however, can
grow or shrink in size as needed.
Create a Vector
To create a vector, use the vector keyword, and specify the type of values it should
store within angle brackets <> and then the name of the vector, like: vector<type>
vectorName .
Example
https://www.w3schools.com/cpp/cpp_vectors.asp 1/10
11/11/2024, 17:33 C++ Vectors
//vector<string>
Create a vector called cars that will store strings
Tutorials Exercises
cars;
Services My W3Schools
HTML
CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C
If you want to add elements at the time of declaration, place them in a comma-
separated list, inside curly braces {} , just like with arrays:
Example
// Create a vector called cars that will store strings
vector<string> cars = {"Volvo", "BMW", "Ford", "Mazda"};
Try it Yourself »
Note: The type of the vector ( string in our example) cannot be changed after its
been declared.
Access a Vector
You can access a vector element by referring to the index number inside square
brackets [] .
Vectors, like arrays, are 0-indexed, meaning that [0] is the first element, [1] is the
second element, and so on:
Example
// Create a vector called cars that will store strings
vector<string> cars = {"Volvo", "BMW", "Ford", "Mazda"};
https://www.w3schools.com/cpp/cpp_vectors.asp 2/10
11/11/2024, 17:33 C++ Vectors
HTML
// GetCSSthe second
JAVASCRIPT
element SQL PYTHON JAVA PHP HOW TO W3.CSS C
cout << cars[1]; // Outputs BMW
Try it Yourself »
One advantage of using the vector library, is that it includes many useful functions.
For example, you can access the first or the last element of a vector with the
.front() and .back() functions:
Example
Try it Yourself »
To access an element at a specified index, you can use the .at() function and
specify the index number:
Example
// Create a vector called cars that will store strings
vector<string> cars = {"Volvo", "BMW", "Ford", "Mazda"};
https://www.w3schools.com/cpp/cpp_vectors.asp 3/10
11/11/2024, 17:33 C++ Vectors
Try it Yourself »
Tutorials Exercises Services My W3Schools
HTML
CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C
Note: The .at() function is often preferred over square brackets [] because it lets
you know if an error occurs.
Example
// Create a vector called cars that will store strings
vector<string> cars = {"Volvo", "BMW", "Ford", "Mazda"};
// Try to access an element that does not exist (throws an error message)
cout << cars.at(6);
Try it Yourself »
Example
Try it Yourself »
https://www.w3schools.com/cpp/cpp_vectors.asp 4/10
11/11/2024, 17:33 C++ Vectors
Tutorials
Example
Exercises Services My W3Schools
HTML
CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C
vector<string> cars = {"Volvo", "BMW", "Ford", "Mazda"};
Try it Yourself »
To add an element to the vector, you can use the .push_back() function, which will
add an element at the end of the vector:
Example
vector<string> cars = {"Volvo", "BMW", "Ford", "Mazda"};
cars.push_back("Tesla");
Try it Yourself »
Example
vector<string> cars = {"Volvo", "BMW", "Ford", "Mazda"};
cars.push_back("Tesla");
cars.push_back("VW");
cars.push_back("Mitsubishi");
cars.push_back("Mini");
https://www.w3schools.com/cpp/cpp_vectors.asp 5/10
11/11/2024, 17:33 C++ Vectors
Try it Yourself »
Tutorials Exercises Services My W3Schools
HTML
CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C
Example
Try it Yourself »
Note: Elements are usually only added and removed from the end of the vector. If
you need to add or remove elements from both ends, it is often better to use a deque
instead of a vector.
Vector Size
To find out how many elements a vector has, use the .size() function:
Example
Try it Yourself »
The .empty() function returns 1 (true) if the vector is empty and 0 (false) if it
Tutorials Exercises
contains one or more elements:
Services My W3Schools
HTML
CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C
Example
vector<string> cars;
cout << cars.empty(); // Outputs 1 (The vector is empty)
Try it Yourself »
Example
Try it Yourself »
Example
vector<string> cars = {"Volvo", "BMW", "Ford", "Mazda"};
Try it Yourself »
You can also use a for-each loop (introduced in C++ version 11 (2011), which is
cleaner and more readable:
https://www.w3schools.com/cpp/cpp_vectors.asp 7/10
11/11/2024, 17:33 C++ Vectors
Tutorials
Example
Exercises Services My W3Schools
HTML
CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C
vector<string> cars = {"Volvo", "BMW", "Ford", "Mazda"};
Try it Yourself »
Tip: It is also possible to loop through vectors with an iterator, which you will learn
more about in a later chapter.
❮ Previous Next ❯
https://www.w3schools.com/cpp/cpp_vectors.asp 8/10
11/11/2024, 17:33 C++ Vectors
HTML
CSS JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C
COLOR PICKER
Top Tutorials
HTML Tutorial
CSS Tutorial
JavaScript Tutorial
How To Tutorial
SQL Tutorial
Python Tutorial
W3.CSS Tutorial
Bootstrap Tutorial
PHP Tutorial
Java Tutorial
C++ Tutorial
jQuery Tutorial
https://www.w3schools.com/cpp/cpp_vectors.asp 9/10
11/11/2024, 17:33 C++ Vectors
Top References
Tutorials Exercises Services My W3Schools
HTML Reference
HTML
CSS CSS Reference
JAVASCRIPT SQL PYTHON JAVA PHP HOW TO W3.CSS C
JavaScript Reference
SQL Reference
Python Reference
W3.CSS Reference
Bootstrap Reference
PHP Reference
HTML Colors
Java Reference
Angular Reference
jQuery Reference
https://www.w3schools.com/cpp/cpp_vectors.asp 10/10