I'm a bit new to C++ way of handling this situation, so instead of using singleton pattern right away, I decided to ask this question instead to see if there's a better alternative.
Is there any other way to implement a system, where we got a main class that has access to a row of classes, that are friends in-between each other ? I didn't find any other way to make this work: inheritance won't work due to a fact that classes are working completely differently one from another, and using member classes is not an option iether, because then I will construct another instance of a same class, and that is not an option, due to a fact that I got a non-atomic class like logger, and there should be only one instance of it.
This is what I`m thinking of: