#c #arrays
#c #массивы
Вопрос:
Итак, я хотел создать массив размером NxN. Я знаю, что это возможно сделать с одним измерением, но могу ли я сделать это с двумя? Вот мой код: list_length определен выше как число int и представляет собой сумму строк в текстовом файле.
while (row_size_t==false)
{
cout << "How many rows?" << endl;
cin >> rows;
if (rows<=0)
{
cout << "wrong value" << endl;
}
else
{
row_size_t = true;
}
}
int* joker_array = new int [list_length][rows];
Комментарии:
1. Используйте
std::vector<std::vector<int>>
2. Да, вы можете сделать это с таким количеством измерений, сколько вам нужно. Однако настройка будет усложняться с каждым добавленным измерением.
std::vector
делает то же самое, но будет намного проще в использовании.3.
std::vector<std::vector<T>>
может содержать любое количество векторов, и эти векторы могут быть любого размера, однако это не лучшая структура данных, то, что использовать, зависит от конкретных потребностей4. Имена, которые заканчиваются на
_t
, обычно являются именами типов. В системах POSIX они зарезервированы. Не используйте подобные имена для вещей, которые не являются типами. Изменитеrow_size_t
на то, что описывает, что он на самом деле делает. Может бытьrow_size_valid
?