过去完成时
表示「过去的过去」,即比某个过去动作更早发生的事。
had + done
要点
- 必须有一个过去的时间点或过去动作作参照,否则不成立。
- 常用 before / after / when / by the time 引导的从句作参照。
- 常与 already / just / never / ever 连用。
- 与一般过去时的区别:两个过去动作比先后,先发生的用过去完成时。
- 形式是 had + 过去分词,主语单复数一律 had,不像现在完成时那样还要分 has:They had left. / He had left.(三单也写 had)。
- before 和 after 已经把先后说死,两句都用一般过去时也算对;而 when 从句只给时间点、不交代先后,这时 had 是唯一的办法:When I got home, he had already left(他先走)/ When I got home, he left(我一到家他就出门)。
- 直接引语搬到过去参照点之后要整句降一级:I have finished 落到 said 后面就成 He said he had finished —— 凡"过去的过去"都这么换算。
例句
He had already left before I arrived.
我到之前他已经离开了。
I had never seen such a beautiful sunset before.
我以前从未见过如此美丽的日落。
By the time we got there, the film had begun.
我们到那儿时电影已经开始了。
She had finished her homework when I called her.
我打电话给她时她已经做完作业了。
He had never flown before, so he felt nervous.
他以前从没坐过飞机,所以心里发紧。
The road was wet because it had rained during the night.
路面是湿的,因为夜里下过雨。
易错提示
- 只有一个过去动作时不要用过去完成时,一般过去时就够了。
- by the time + 过去时,主句常配过去完成时。
- had 不是过去时的装饰:只有一件过去的事、没有更早的动作作对照时,硬加 had 反倒错 —— 叙述今天上午的事写 He went to school,不写 He had gone to school。
- 它的否定和疑问只动 had:Had they left before you came? / They hadn't left. —— 过去分词照旧挂着,不再借 did。