18.3 一个更加复杂的例子