News for hackers. Stuff that matters.
Re:C++23: Removing garbage collection support by fluoridation on Wednesday November 01, 2023 @06:02PM (#38105943)
Following the previous example, you wrap std::unique_ptr in another class that has no move constructor and forwards constructor parameters to std::make_unique(), and can also be constructed from an std::unique_ptr. Now you have a heap-allocated smart pointer class that can't possibly be null.

Alternatively, you make it movable, and if someone tries to call operator*(), operator->(), or get() on the null value, you throw an exception. Not as clean, but, hey, it's safe.

There are no comments on this comment yet.