Ahahah !
Aside: Someone might say, “but can’t someone still write load_widget(some_id).release()?” Of course they can, if they’re pathological; the correct answer is, “don’t do that.” Remember, our concern is to protect against Murphy, not Machiavelli—against bugs and mistakes, not deliberate crimes—and such pathological abuses fall into the latter category.
A part ça, "modern C++" est vraiment puissant ! Je reconnais que pour l'instant j'utilise plutôt Qt et je reste très très loin des "smart pointers". De voir qu'il est possible d'utiliser quelque chose du type "optional