У меня есть зЬй :: вектор, как описано ниже:Итерация над вектором с использованием первого значения станд :: пары только
std::vector<std::pair<int, const char*>> matrix;
Этот вектор имеет следующие значения (например, для): values (as an example)
Эти значения могут быть доступ здесь следующим образом:
matrix[0] = [0,Hello] // pseudo code (only showing values inside)
matrix[1] = [0,Fox] // pseudo code (only showing values inside)
matrix[2] = [1,Red] // pseudo code (only showing values inside)
Я Перебор содержимого вектора читать значения, делая это:
for (std::vector<std::pair<int, const char*>>::iterator it = matrix.begin(); it != matrix.end(); ++it)
{
std::pair<int, const char*> v_temp = *it;
std::cout << v_temp.first;
std::cout << v_temp.second;
}
Теперь, что это делает, выполняется итерация от первого элемента вектора до конечного элемента вектора. То, что я хочу сделать, является итерацией только для первых элементов (т. Е. Значений int). Итак, из прилагаемого табличного изображения этот текущий код будет зацикливаться на [row x column] [9 x 2] = 18 раз. Я хочу, чтобы он для этого повторял только 9 раз [строк] и не учитывал столбцы в целом.
Как я могу это сделать?
Вы пробовали устраняя строки 'зЬй :: COUT << v_temp.second;'? – Yakk
Возможно, вам захочется узнать, как использовать инструмент [debugger] (https://en.wikipedia.org/wiki/Debugger), чтобы лучше понять поток управления вашими программами. – Drop