条款 12:了解“抛出一个 exception”与“传递一个参数”或“调用一个虚函数”之间的差异