Согласно N3485 §23.3.2.2:
(...) неявный механизм перемещения и оператор назначения перемещения для массива требуют, чтобы T было MoveConstructible или MoveAssignable соответственно.
Итак, std::array
поддерживает перемещение семантики, если тип его элементов. Отлично!
Однако, что это значит? Я склонен представить этот тип как более безопасную версию массива, предоставляющую интерфейс, совместимый с STL, но если это правда, то как std::array
перемещать-строить свои элементы? Могу ли я сделать то же самое с обычным массивом?