過去完成時由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等詞連用,表示一個開始于過去并仍在繼續(xù)或剛剛結束的動作。(參見第186節(jié)。)與此同理,過去完成時也可以用來表示在所說的過去某一時刻之前就已開始的動作,這一動作:
(a)在該時刻仍然在繼續(xù);或
(b)在該時刻停止或剛剛停止。
但應注意,過去完成時還可以用來表示:
(c)在所說時刻之前某一時候停止的動作。
(a),(b),(c)這三種類型的例句分別列舉如下:
(a)Bill was in uniform when I met him.He had been a soldier for tenyears/since he wasseventeen,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 toa tower block.
安在小屋里已經住了60年/安出生以來就一直住在小屋,也不想搬到塔樓去住。(這里也可以用過去完成進行時形式 had beeniiving。)
(b)The old oak tree,which had stood in the churchyard for300 years/since before the churchwas 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 sheeventually 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也不能用過去完成進行時。還要注意到,這里的過去完成時沒有與之相當的現在完成時。如果把句中最后一個動詞變成現在時,其他動詞時態(tài)都要變成一般過去時。
He served in the army for ten years;then retired and married.
His chil-dren are now at school.
他在軍隊里服役十年,然后退伍并結了婚。他的孩子現在都在上學。