沪江英语 > 英语时态 > 过去完成时

过去完成时表示过去某一时刻或某一动作之前已完成的动作或状态(亦可以说是“过去的过去”)。过去完成时由had加过去分词构成。

1.1 过去完成时的构成
肯定句:主语 + had + 过去分词...
否定句:主语 + had + not + 过去分词...
疑问句:Had + 主语 + 过去分词...?
疑问代词/疑问副词 + had + 主语 + 过去分词...?

过去完成时

1.2 过去完成时的肯定句
句型:主语 + had + 过去分词...
过去完成时的肯定句由助动词had加过去分词构成:

He had already been to New York earlier in the week.本周早些时候他去过纽约。
Jane had just left when you rang.你打电话时简刚走。

1.3 过去完成时的否定句
句型:主语 + had + not + 过去分词...
过去完成时的否定句是在助动词had后加not,之后是过去分词:

At that time we hadn't met her.那时我们还没有见到她。
The country had not yet recovered from the effects of the war.这个国家尚未从战争的影响下复原。


1.4 过去完成时的疑问句
一般疑问句句型:Had + 主语 + 过去分词...?
回答方式:Yes,主语 + had.
No,主语 + had + not.
过去完成时的疑问句是将助动词had置于主语之前(大写had的第一个字母),在句尾加问号;这种语序是倒装语序:

I visited the museum yesterday.—Had you visited it before? —Yes,I had./No,I hadn't.昨天我参观了这个博物馆。——你以前参观过这个博物馆吗? ——是,我去过。/没有,我以前没有去过。

1.5 过去完成时的用法
1.表示较早的过去

表示较早的过去,即某一时刻之前已完成的动作或状态:
In 1980,I'd never been to Paris.(=I never went there before1980.)1980年之前我从未去过巴黎。
After we had landed,the plane was searched thoroughly.我们降落后,飞机被彻底搜查了一遍。
When she heard that her father had died in the accident,she burst out crying.当她听说她父亲在那次事故中丧生时便大哭起来。
2.用于间接引语
过去完成时的作用有时完全相当于现在完成时的过去形式,在间接引语中多有这种情况:
Helen said(that)she had moved to another flat.海伦说她已搬 到另一套房间去了。
He said he had been there before.他说他曾经去过那里。
3.用于宾语从句
过去完成时表示一个过去的动作先于另一个过去动作的用法,多见于宾语从句。一般说来,主句中用了know(知道),realize(意识到),think(认为),suppose(猜想),guess(推测),find(找到),discover(发现),decide(决定),remember(想起),forget(忘记)等动词的一般过去时,如果宾语从句中的动作先于主句的动作,通常用过去完成时:
We realized we had lost our way.我们意识到我们迷路了。
I didn't think to ask her if she had passed her examination.我没有想问她是否考试及格了。
4.强调过去动作的完成
I began collecting stamps in February and by November I had col-lected more than 2000.我从2月份开始集邮,到11月已收集到2000多枚。
By six o'clock they had worked for8hours.到6点钟他们已经工作了8小时了。(可能还没结束)
5.用于虚拟语气
过去完成时的这一用法,常见于以if only等引导的感叹句:
If only we had listened to their advice! 我们要是听了他们的意见就好了!
If only you had worked with greater care! 你要是更仔细一些该多好!
Would that we had seen her before she died.要是在她去世之前我们能见她一面该有多好。
过去完成时的这一用法还见于构成虚拟语气的条件从句和I wish...(我希望……),I’d rather...(我宁愿……)后的that-从句:
I'd rather you hadn't been present.我宁愿你当时不在场。
If I had asked for directions,I wouldn't have gotten lost.如果我问一下路,就不会迷失方向了。

6.表示过去未曾实现的希望、打算和意图
过去完成时表示过去未曾实现的希望、打算或意图,只适用于下列动词:expect(期待),hope(希望),intend(打算),mean(打算),suppose(料想),think(认为),want(想要)等:
We had hoped that you would be able to visit us.我们原本希望你会来拜访我们。
I had meant to take a good holiday this year,but I was not able to leave.我本打算今年好好去度假,只是脱不开身。
7.与过去完成时连用的时间状语
与过去完成时连用的时间状语可以是already(已经),yet(仍然),still(还),just(刚刚),hardly...when(刚……就),scarcely...before(刚……就),ever(曾经),never(从来没有)等,也可以是by(不迟于),before(在……之前),until(直到),as soon as(一……就)等引导的词组或从句:
When I came back at midnight she still hadn't finished.我半夜回来时,她还没有做完。
The game had hardly/scarcely/barely begun when it started raining.比赛刚刚开始就下起雨来。
By Tuesday he hadn't done it.到星期二他还没有做完。

过去完成时