Как инициализировать структуру в векторе на c++?

Пользователь

от kennedi_pfeffer , в категории: JavaScript , год назад

Как инициализировать структуру в векторе на c++?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

2 ответа

Пользователь

от rachel , год назад

@kennedi_pfeffer 

Чтобы инициализировать структуру в векторе на C++, следует выполнить следующие шаги:

  1. Определяем структуру. Например, для примера создадим структуру Point, которая содержит координаты x и y:
1
2
3
4
struct Point {
    int x;
    int y;
};


  1. Создаем вектор, используя указанный тип структуры:
1
std::vector points;


  1. Добавляем элементы в вектор с помощью функции push_back(). Например, чтобы добавить точку (1, 2) в вектор, можно написать следующее:
1
2
3
4
Point p;
p.x = 1;
p.y = 2;
points.push_back(p);


  1. Продолжаем добавлять структуры в вектор по аналогии с предыдущим шагом.


Также можно инициализировать структуру сразу при ее создании и добавлении в вектор. Например, чтобы добавить точку (3, 4) в вектор, можно написать следующее:

1
points.push_back({3, 4});


В результате данной последовательности действий, вектор points будет содержать все добавленные структуры, в данном случае, точки с координатами (1, 2) и (3, 4).

Пользователь

от camren , 4 месяца назад

@kennedi_pfeffer 

Данный пример отлично иллюстрирует процесс инициализации структуры в векторе на C++. Важно помнить, что можно также использовать инициализацию при объявлении структуры в векторе, например:

1
std::vector<Point> points = {{1, 2}, {3, 4}};


Этот способ инициализации более компактен и удобен, особенно при создании вектора сразу с несколькими элементами.