I straight up never got a nice answer from StackOverflow on this. Say you have 5 classes, each requiring access to the data members/functions of the others. What’s a nice way to solve this problem? I’ve thought of only two nice shit methods:
Pass pointers/shared-pointers etc to each class, but not through the constructor but a setter function
Pass lambdas or std::function everywhere. Yuck! Still doesn’t put each object in a valid state in the constructor.
The. real question is whether this problem needs to be modelled using classes in the first place. The alternative is to just have a set of composable functions that take a piece of data and return a modified version that can be passed to a different function.
yogthos: I have problem y. How can I solve problem y?
StackOverflow: You don’t solve problem y. You solve problem x so that problem y never comes into being.
yogthos: Oh wow. Shit okay, well what if I’m already having problem y though? How can -
StackOverflow: bruh. Why are you even still thinking about problem y? Problem y isn’t real; it can’t hurt you. Problem y was just a mirage. Get it? It was a red herring. An epistemological myth you told yourself too many times and started believing. Problem y is just a sickness of the mind made manifest. Cleanse yourself of it.
lol I know you’re not saying that to be dismissive I just like dramatizing things
I straight up never got a nice answer from StackOverflow on this. Say you have 5 classes, each requiring access to the data members/functions of the others. What’s a nice way to solve this problem? I’ve thought of only two
niceshit methods:The. real question is whether this problem needs to be modelled using classes in the first place. The alternative is to just have a set of composable functions that take a piece of data and return a modified version that can be passed to a different function.
yogthos: I have problem y. How can I solve problem y?
StackOverflow: You don’t solve problem y. You solve problem x so that problem y never comes into being.
yogthos: Oh wow. Shit okay, well what if I’m already having problem y though? How can -
StackOverflow: bruh. Why are you even still thinking about problem y? Problem y isn’t real; it can’t hurt you. Problem y was just a mirage. Get it? It was a red herring. An epistemological myth you told yourself too many times and started believing. Problem y is just a sickness of the mind made manifest. Cleanse yourself of it.
lol I know you’re not saying that to be dismissive I just like dramatizing things
Well, what problems are you trying to solve by having the classes all access each other’s data members? Why is that necessary?