Como se deve usar std :: optional?

Estou lendo a documentação std::experimental::optionale tenho uma boa idéia sobre o que faz, mas não entendo quando devo usá-lo ou como devo usá-lo. O site ainda não contém exemplos, o que me dificulta a compreensão do verdadeiro conceito desse objeto. Quando é std::optionaluma boa escolha para...