I don't understand why I'm receiving seg faults and bad access errors with this program. Specs are to use a dynamically allocated array of pointers. Program functions correctly with a static pointer, but I'm running into issues implementing the dynamic memory.
Lines 23 and 36 result in a memory leak. There is no way to recover the original pointer(s) returned by new, and using delete on the pointer you have will result in undefined behavior. Either change the type of Address::addrs to something appropriate to directly assign the result of your call to new or change the call to new so that it's result may be directly assigned to Address::addrs. Presumably, your Address object doesn't have constructors for Person -- that code is just a little bit screwed up.