Как инициализировать std :: array , где T не копируется и не может быть сконструирован по умолчанию?

У меня есть фиксированное количество объектов класса T, которые нельзя копировать и не создавать по умолчанию.Поскольку размер фиксирован, я хотел бы использовать контейнер типа массива, например ---- +: = 0 =: + ---- вместо ---- +: = 1 =: + ---- или ---- +: = 2 =: + ---- .Я бы хотел избежать дополнительного уровня косвенного обращения, если могу.Как мне инициализировать ---- +: = 3 =: + ---- ?Использование ---- +: = 4 =: + ---- приводит к ошибке об удаленном конструкторе копии.Использование ---- +: = 5 =: + ---- не заставляет элементы массива использовать конструктор перемещения.Если ---- +: = 6 =: + ---- по своей сути не работает, что еще я могу сделать, не прибегая к дополнительному уровню косвенного обращения или ручным методам управления памятью, таким как новое размещение?
c++
7 голосов | спросил Syncopated 29 J000000Friday16 2016, 04:59:47

0 ответов


Похожие вопросы

Популярные теги

security × 330linux × 316macos × 2827 × 268performance × 244command-line × 241sql-server × 235joomla-3.x × 222java × 189c++ × 186windows × 180cisco × 168bash × 158c# × 142gmail × 139arduino-uno × 139javascript × 134ssh × 133seo × 132mysql × 132