So far, you have seen analyze_train
programs in which trains are
represented as one-dimensional arrays of pointers to railroad-car objects.
The principal defect of such a representation is that you always wonder
whether you have allocated an array that is long enough to hold all
possible trains, yet not so long as to waste a great deal of
never-to-be-used space.