Можно ли добавить вариант STD :: в качестве компонента в сущность в ENTT?C++

Программы на C++. Форум разработчиков
Ответить
Anonymous
 Можно ли добавить вариант STD :: в качестве компонента в сущность в ENTT?

Сообщение Anonymous »

У меня есть разные перечисления, чтобы указать тип объекта. Затем я использую вариант std :: variant в качестве объекта может быть любого типа, то есть < /p>

Код: Выделить всё

enum Type1{
type1a,
type1b
};

enum Type2{
type2a,
type2b
};

using Types = std::variant;
< /code>
Тогда я хочу добавить компонент в сущность в реестре как < /p>
registry.emplace(entity, Type1::type1a);
< /code>
Когда я пытаюсь это сделать, я получаю ошибку < /p>
error: 'class std::variant' has no member named '_M_destructive_move'
[build]       this->_M_destructive_move(std::move(__rhs));
Но, насколько я знаю, std :: variant подходит для движения. Есть способ обойти это?


Подробнее здесь: https://stackoverflow.com/questions/796 ... ty-in-entt
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C++»