Arrays of Structs
When you need to represent multiple related items with the same structure, such as a group of people, you can use arrays or vectors of structs. Suppose you have already defined a Person struct with members like name, age, and height. Declaring an array of Person structs allows you to store and manage a fixed-size collection of people. For example, you can create an array to represent a classroom roster or a team.
main.cpp
1234567891011121314151617181920#include <iostream> #include <string> struct Person { std::string name; int age; double height; }; int main() { Person people[3] = { {"Alice", 30, 5.5}, {"Bob", 25, 5.9}, {"Charlie", 28, 5.7} }; for (int i = 0; i < 3; ++i) std::cout << "Name: " << people[i].name << std::endl; }
Vectors offer several advantages over arrays when working with dynamic collections of structs:
- Allow you to add or remove elements at runtime;
- Automatically manage memory and resizing;
- Provide useful member functions such as
push_back,pop_back, andsize; - Help prevent common errors like buffer overflows;
- Make code easier to read and maintain.
Use a std::vector when the size of your collection may need to change during program execution.
Tak for dine kommentarer!
Spørg AI
Spørg AI
Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat
Can you show me how to declare an array of Person structs?
What is the syntax for creating a vector of Person structs?
Can you give an example of adding a new Person to a vector?
Awesome!
Completion rate improved to 8.33
Arrays of Structs
Stryg for at vise menuen
When you need to represent multiple related items with the same structure, such as a group of people, you can use arrays or vectors of structs. Suppose you have already defined a Person struct with members like name, age, and height. Declaring an array of Person structs allows you to store and manage a fixed-size collection of people. For example, you can create an array to represent a classroom roster or a team.
main.cpp
1234567891011121314151617181920#include <iostream> #include <string> struct Person { std::string name; int age; double height; }; int main() { Person people[3] = { {"Alice", 30, 5.5}, {"Bob", 25, 5.9}, {"Charlie", 28, 5.7} }; for (int i = 0; i < 3; ++i) std::cout << "Name: " << people[i].name << std::endl; }
Vectors offer several advantages over arrays when working with dynamic collections of structs:
- Allow you to add or remove elements at runtime;
- Automatically manage memory and resizing;
- Provide useful member functions such as
push_back,pop_back, andsize; - Help prevent common errors like buffer overflows;
- Make code easier to read and maintain.
Use a std::vector when the size of your collection may need to change during program execution.
Tak for dine kommentarer!