Aggregation “has-a” (C++)
If A has-a B, then generally:
Bhas an independent existence outside ofA- If
Adies,Blives on - If
Ais copied,Bisn’t (shallow copy)
How is "has-a" implemented?
Generally implemented via references or non-owning pointers (one you don’t delete).

If a student dies, university lives on. if we copy a student, don’t copy whole university.