• arrakark@10291998.xyz
    link
    fedilink
    English
    arrow-up
    10
    ·
    edit-2
    7 days 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 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.
    • ☆ Yσɠƚԋσʂ ☆@lemmy.mlOP
      link
      fedilink
      arrow-up
      21
      ·
      7 days 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.

    • Kayana@ttrpg.network
      link
      fedilink
      arrow-up
      17
      ·
      7 days ago

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