Я хочу, чтобы сделать карту, что есть ключи, как целое, как 0,1,2,3 и каждая из значений ключей, чтобы быть переменный массив целых чисел, пусть говоритКарты <Int, int*> в C++
map[0] = {0,1,2};
map[1] = {0,1,2,3,4};
как добиться этого в C++
Я хочу, чтобы сделать карту, что есть ключи, как целое, как 0,1,2,3 и каждая из значений ключей, чтобы быть переменный массив целых чисел, пусть говоритКарты <Int, int*> в C++
map[0] = {0,1,2};
map[1] = {0,1,2,3,4};
как добиться этого в C++
Вы хотите <map>
и <vector>
:
std::map<int, std::vector<int>> m;
m[0] = {0, 1, 2};
m[1] = {0, 1, 2, 3, 4};
[demo] (https://ideone.com/mQq3vJ) –
спасибо вам много! – hariszaman
@hariszaman: Нет проблем. Замечание Jarod42 выше полезно; если ваши ключи последовательно начинаются с 0, то вектор векторов более эффективен, чем карта векторов. –
C++ не имеют массивы переменной длины, но она имеет 'зЬй :: VECTOR'. Поэтому используйте их вместо этого. – juanchopanza
Если ваши ключи смежны от '0', вы можете использовать' vector' вместо 'map' – Jarod42