Структура векторов C

#vector #struct

#вектор #структура

Вопрос:

есть ли способ очистить структуру векторов за один раз, используя одну инструкцию? т.е. struct AStruct { список векторных строк; список векторных расстояний; }A;

я хочу, чтобы оба вектора использовали один оператор.

Ответ №1:

Конечно:

 AStruct a;
// stuff
a = AStruct();  // clear it
  

Тем не менее, я бы, вероятно, дал себе функцию:

 struct AStruct { 
   vector <string> StringList; 
   vector <string> DistanceList; }
   void clear() {
       StringList.clear();
       DistanceList.clear();
   }
};
  

Затем вы можете сказать:

 AStruct a;
// stuff
a.clear();  // clear it
  

что, возможно, легче понять.

Комментарии:

1. AStruct() — это правильный конструктор? если я не хочу писать конструктор, как я могу это сделать?

2. Вам не нужно писать конструктор — компилятор предоставляет его для вас.