Re: Three Classes Share Data???
Immortal Nephi <Immortal_Nephi@satx.rr.com> wrote:
Thank you for explaining. You use a sentence "If you want two
objects to share a variable then you use pointers". It is an
example of my code to show class Base1 and class Base2 what your
sentence meant. Correct?
In a sense yes. But you have class Base1 and Base2 both contain an int,
and the rest of the code is an elaborate attempt to keep those two ints
synchronized.
When you have two objects who's values are dependent on each-other, you
should make a class who's object ensures the two objects in question
stay synchronized.
Is my code a good design?
No.
Two objects can become one when they modify shared variable through
a pointer. If Base class is too large over 200,000 lines, I may
have difficulties to focus smaller problem than larger problem.
One object is divided into two objects to reduce the size of class.
The thing is, you haven't made it so you can focus on a smaller problem.
The two classes are so tied up in each-other (note the friend
declarations and how they constantly modify each-other to maintain
shared state,) that you are still stuck with one big problem instead of
two smaller ones.
Your base class is over 200,00 lines... The line count alone doesn't
mean bad design, unless there is a lot of repetition. How many
member-variables does it have?