In contrasto to the Singleton, the Monostate is suitable to be inherited to extend its functionalities, as long as member methods are not static.
It follows a minimal example in C++:
struct Settings {
virtual std::size_t width() const noexcept { return width_; }
virtual std::size_t heigh...