Я хочу вызвать метод (шаблон), который принимает vector<array<T, N>>&
с результатом другого метода, который возвращает vector<T>
Эффективный способ преобразования/переосмысливать вектор <T> как вектор <array<T, 1>>
Есть ли эффективный (O (1)) способ переосмыслить vector<T>
как vector<array<T,1>>
? Возможно ли/безопасно до reinterpret_cast
?
@timrau не оба контейнера, как предполагается, хранить элементы смежно? – user463035818
@timrau Уверен, что у вас к нему нет доступа? imho базовый вектор :: массив данных должен быть непрерывным куском памяти размерной емкости * sizeof (T) байтов в любом случае. Или я чего-то не хватает? –
@ b.buchhold К сожалению, 'std :: array' не гарантированно не имеет чего-то в конце своих данных. Поэтому элементы массива или вектора 'std :: array' не должны быть смежными. Они будут в одном блоке, но могут быть пробелы. – juanchopanza