add effective c++ item 49 example 1