Инициализировать std::array из initializer_list

Я пытаюсь инициализировать член типа ::std::array<T,N>. Однако он не принимает initializer_list, который я передаю через список аргументов. Это сводится к:

#include <initializer_list>
#include <array>

int main() {
  ::std::initializer_list<int> il = {4,2};
  ::std::array<int,2> a = il; 
}

Массив отказывается инициализироваться из него. Каков предполагаемый способ втиснуть данные из initializer_list в std::array?

Примечание. Я компилирую с помощью C++17.


person bitmask    schedule 14.04.2019    source источник
comment
Сильно связано: Как создать объект std::array со списком инициализаторов?   -  person Baum mit Augen    schedule 14.04.2019
comment
@BaummitAugen: Спасибо. Я не мог найти этот вопрос раньше.   -  person bitmask    schedule 14.04.2019
comment
Без проблем. В этом случае еще один указатель не помешает.   -  person Baum mit Augen    schedule 14.04.2019