• arrakark@10291998.xyz
    link
    fedilink
    English
    arrow-up
    0
    ·
    edit-2
    3 months ago

    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.
    • Kayana@ttrpg.network
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      Well, what problems are you trying to solve by having the classes all access each other’s data members? Why is that necessary?

    • ☆ Yσɠƚԋσʂ ☆@lemmy.mlOP
      link
      fedilink
      arrow-up
      0
      ·
      3 months ago

      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.

      • Unbecredible@lemm.ee
        link
        fedilink
        English
        arrow-up
        0
        ·
        13 days ago

        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