cpp_practice_ch.2