Обмен строк матрицы

220
25 ноября 2017, 10:50

Если матрица хранится как int** matrix, то можно быстро обменять строки с помощью обмена указателей std::swap(matrix[x], matrix[y]);. Как быстро обменять строки у матрицы, хранящейся в виде std::array<std::array<value_type, M>, N>?

Answer 1

Использовать стандартный swap - ведь каждая строка - это просто std::array (со столбцами так просто не получилось бы...)

Вот так:

array<array<int, 5>, 5> a;
...
std::swap(a[1],a[3]);

Или

a[1].swap(a[3]);

Ну, или стандартный обмен:

array<int, 5> tmp;
tmp  = a[1];
a[1] = a[3];
a[3] = tmp;
READ ALSO
QTcpSocket RemoteHostClosedError после получения ответа

QTcpSocket RemoteHostClosedError после получения ответа

Есть многопоточный сервер, который создает новую среду при подключении клиентаПосле отключения клиента, среда удаляется

319
Попадает ли точка в закрашенную область [требует правки]

Попадает ли точка в закрашенную область [требует правки]

Уважаемые, помогите пожалуйста! Мне нужно написать программу (мне хотя бы помощь) на С++Определить количество точек попадающих в фигуры 1 и 2 (радиус...

220