A 形式
过去完成时由had+过去分词构成,因此无人称变化:
肯定式:I had/I’d worked等
否定式:I had not/hadn’t worked等
疑问式:had I worked?等
否定疑问式:had I not/hadn’t I worked?等
B 用法
1 过去完成时是与现在完成时相当的过去式。
现在完成时:
Ann has just left.If you hurry you’ll catch her.
安刚刚走。如果你快一点,就能追上她。
过去完成时:
When I arrived Ann had just left.
我到的时候,安刚刚离开。
现在完成时:
I’ve lost my case.
我的手提箱丢了。
过去完成时:
He had lost his case and had to borrow Tom’s pyjamas.
他的手提箱丢了,不得不去向汤姆借睡衣睡裤。
但是,过去完成时不像现在完成时那样限于表达未指明时间的动作,因此可以说:
He had left his case on the 4∶40 train.
他把手提箱丢在4点40分的火车上了。
2 现在完成时可以和 since/for/always等词连用,表示一个开始于过去并仍在继续或刚刚结束的动作。(参见第186节。)与此同理,过去完成时也可以用来表示在所说的过去某一时刻之前就已开始的动作,这一动作:
(a)在该时刻仍然在继续;或
(b)在该时刻停止或刚刚停止。
但应注意,过去完成时还可以用来表示:
(c)在所说时刻之前某一时候停止的动作。
(a),(b),(c)这三种类型的例句分别列举如下:
(a)Bill was in uniform when I met him.He had been a soldier for tenyears/since he was seventeen,and planned to stay in the army till hewas thirty.
我遇到比尔的时候,他身穿军服。那时他已经当了十年兵了/他
从17岁就当兵,并且还计划在军队里呆到30岁。
Ann had lived in a cottage for sixty years/ever since she was born,andhad no wish to move to a tower block.
安在小屋里已经住了60年/安出生以来就一直住在小屋,也不想搬到塔楼去住。(这里也可以用过去完成进行时形式 had beeniiving。)
(b)The old oak tree,which had stood in the churchyard for300 years/since before the church was built,suddenly crashed to the ground.
屹立在教堂墓地上已300百年之久的老橡树/在教堂建造之前就屹立着的老橡树突然间哗啦一声巨响倒在地上。(这里也可以用过去完成进行时形式 had been standing。)
Peter,who had waited for an hour/since ten o’clock,was very angrywith his sister when she eventually turned up.
彼得等了一小时/从10点钟起就等着,他妹妹终于来到时他非常生气。(也可以用had been waiting。)
(c)He had served in the army for ten years;then he retired and married.
His children were now at school.
他在军队里服役十年,后来退伍并结了婚。他的孩子现在已上学了。
这里既不能用since也不能用过去完成进行时。还要注意到,这里的过去完成时没有与之相当的现在完成时。如果把句中最后一个动词变成现在时,其他动词时态都要变成一般过去时。
He served in the army for ten years;then retired and married.
His chil-dren are now at school.
他在军队里服役十年,然后退伍并结了婚。他的孩子现在都在上学。这些结构以图解形式分别表示如下,直线AB表示过去完成时的动作,TS表示过去说话的某一时刻: