Как я могу написать шаблон/концепцию, чтобы проверить, соответствует ли тип именованному требованию DefaultInsertable

При реализации собственного forward_listшаблон класса, я увидел, что некоторые методы, такие как resize()требуется, чтобы тип был DefaultInsertable . Согласно документации , DefaultInsertable

Указывает, что экземпляр типа может быть создан по умолчанию на месте заданным распределителем.

Я понимаю, что означает DefaultConstructable , и могу обеспечить соответствие моего типа T этому требованию либо с помощью default_initializableконцепции или со следующим шаблоном:

      template <typename = std::enable_if_t<(T(),T{},true),int*>>

где T - любой тип

Но как я могу проверить, что тип может быть сконструирован по умолчанию с помощью данного распределителя ?

0 ответов

Другие вопросы по тегам