This program illustrates how to display the name of the underlying type represented by each typedef defined by a vector class. To get a good feel for what this program shows you, you should change the meaning of TrialType a couple of times, re-building and re-running after each change. You will also need to change the call to the random generator that produces the component values of the vector. Press Enter to continue ... Size of v = 5 Capacity of v = 5 Contents of v: A C E G I Press Enter to continue ... vector::size_type is equivalent to the following type: unsigned int If i is of type vector::size_type and i = v.max_size(); then the value of i is 4294967295, for the given v. Press Enter to continue ... vector::difference_type is equivalent to the following type: int If d is of type vector::differencee_type and d = v.end()-v.begin(); then the value of d is 5, for the given v. Press Enter to continue ... vector::reference is equivalent to the following type: char If r is of type vector::reference and r = v[3]; then the value of r is G, for the given v. Press Enter to continue ... vector::const_reference is equivalent to the following type: char If r_c is of type vector::const_reference and r_c = v[3]; then the value of r is G, for the given v. Press Enter to continue ... vector::iterator is equivalent to the following type: class std::_Vector_iterator > If itr is of type vector::iterator and itr = begin()+2; then the value pointed to by itr is E, for the given v. Press Enter to continue ... vector::const_iterator is equivalent to the following type: class std::_Vector_const_iterator > If itr_c is of type vector::const_iterator and itr_c = begin()+1; then the value pointed to by itr_c is C, for the given v. Press Enter to continue ... vector::reverse_iterator is equivalent to the following type: class std::reverse_iterator > > If itr_r is of type vector::reverse_iterator and itr_r = rbegin()+1; then the value pointed to by itr_r is G, for the given v. Press Enter to continue ... vector::const_reverse_iterator is equivalent to the following type: class std::reverse_iterator > > If itr_cr is of type vector::const_reverse_iterator and itr_cr = rend()-2; then the value pointed to by itr_cr is C, for the given v. Press Enter to continue ... vector::pointer is equivalent to the following type: char * If ptr is of type vector::pointer and ptr = &v[3]; then the value pointed to by ptr is G, for the given v. Press Enter to continue ... vector::const_pointer is equivalent to the following type: char const * If ptr_c is of type vector::const_pointer and ptr_c = &v[1]; then the value pointed to by ptr_c is C, for the given v. Press Enter to continue ... vector::value_type is equivalent to the following type: char Press Enter to continue ... vector::allocator_type is equivalent to the following type: char Press Enter to continue ...