C++ a class with an array of structs, without knowing how large an array I need
arrays, c++, data-structures
Solution
You could try associating a std::vector with each person, with each entry in the vector containing a struct:
typedef struct travel {
string travelDest;
string year;
} travelRecord;
std::vector<travelRecord> travelInfo;
You can then add items to the vector as you see fit:
travelRecord newRecord1 = {"Jamaica", "2010"};
travelInfo.push_back(newRecord1);
travelRecord newRecord2 = {"New York", "2011"};
travelInfo.push_back(newRecord2);
Some more information about vector operations can be found here.
Problem
I have a class with fields like firstname, age, school etc. I need to be able to store other information like for instance, where they have travelled, and what year it was in. I cannot declare another class specifically to hold travelDestination and what year, so I think a struct might be best. This is just an example: ``` struct travel { string travelDest; string year; }; ``` The issue is people are likely to have travelled different amounts. I was thinking of just having an array of travel structs to hold the data. But how do I create a fixed sized array to hold them, without knowing how big I need it to be? Perhaps I am going about this the completely wrong way, so any suggestions as to a better way would be appreciated. I realise there is essentially no difference between a class and struct, but for the purposes of assignment criteria I am not allowed a "class", so yeah.