In this exercise I am using Visual Studio 2019 and a modified version of the std_lib_facilities header found here.
Chapter 20 // Exercise 13
We don't really need a "real" one-past-the-end Link for a list. Modify your solution to the previous exercise to use 0 to represent a pointer to the (non-existent) one-past-the-end Link (list<Elem>::end()); that way, the size of an empty list can be equal to the size of a single pointer.
This made getting the back() element a little trickier. I just started at the head until the next link was nullptr then returned the value. Removing Tail made pushFront a little less complicated though.
At first I cheated and added a get() function to the iterator but I decided to remove it and use only what had been given for the iterator.
No comments:
Post a Comment