chapter 4 effcpp