construtor opcional com initializer_list

Qual é o objetivo deste construtor especial, levando a lista de inicializadores. Alguém pode dar um exemplo de quando isso será útil?

template <class U, class... Args>
constexpr explicit optional(in_place_t, initializer_list<U> il, Args&&... args);

Qual é a diferença acima?

template <class... Args> 
constexpr explicit optional(in_place_t, Args&&... args); 

Ref:http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2013/n3793.html#optional.object.ctor

P.S. Não tenho certeza se deve usar as tags c ++ 14 ou c ++ 1z. Eu acho que deveria haver tag para especificação técnica c ++

questionAnswers(1)

yourAnswerToTheQuestion