Introduction

std::optional as return value

value_or

Using optionals to represent the absence of a value

Using optionals to represent the failure of a function