Question: You can implement a varying-sized two-dimensional array data member of a class by using allocation on the stack of a fixed maximum number of rows and columns or by using a pointer to a one-dimensional array of pointers on the heap, with each of the list of pointers accessing a dynamically allocated one dimensional array representing one row. Use of the heap-dynamic option requires defining a destructor to return to the heap each row and then the array of pointers when the object goes out of scope.