过去将来完成时 (Future Perfect in the Past)
past point -------- future point -------- now -------- future
↑ ------------------------ ↑
从过去看 --------在过去将来某时间点之前要完成的动作
这种时态用于描述从过去某一时间点来看,在将来某一时刻之前要完成的动作。
语法形式
过去将来完成时的构成是:主语 + would have + 过去分词
肯定句:主语 + would have + 过去分词
- I would have finished.
- She would have graduated.
否定句:主语 + would not have + 过去分词
- I would not (wouldn't) have finished.
- She would not (wouldn't) have graduated.
疑问句:Would + 主语 + have + 过去分词?
- Would you have finished?
- Would she have graduated?
应用场景
1. 表示过去预期的将来完成的动作
用于描述在过去某一时刻,预期在将来某个时间点之前要完成的动作。
示例:
- He said he would have finished the work by Friday. (他说他会在星期五之前完成工作。)
- I knew she would have left before I arrived. (我知道在我到达之前她就会离开。)
2. 间接引语中的将来完成时
在间接引语中,将来完成时变成过去将来完成时。
示例:
- Direct: "I will have completed the project by next week." (我下周之前会完成这个项目。)
- Indirect: She said she would have completed the project by the following week. (她说她会在下周之前完成这个项目。)
3. 表示未实现的过去假设
用于表示过去某个未能实现的假设情况。
示例:
- I would have finished the work if you had helped me. (如果你帮我的话,我就能完成这项工作了。)
- She would have graduated by now if she hadn't quit school. (如果她没有退学的话,她现在已经毕业了。)
与其他时态的对比
过去将来完成时 vs 将来完成时
过去将来完成时是从过去的视角看将来的完成动作,而将来完成时是从现在的视角看将来的完成动作。
示例:
- I will have finished the work by tomorrow. (将来完成时 - 从现在看)
- He said he would have finished the work by the next day. (过去将来完成时 - 从过去看)
过去将来完成时 vs 过去完成时
过去将来完成时表示在过去某一时刻之后要完成的动作,而过去完成时表示在过去某一时刻之前已经完成的动作。
示例:
- I had finished the work before he arrived. (过去完成时 - 过去的完成)
- I knew I would have finished the work before he arrived. (过去将来完成时 - 过去对将来的预期)
常见用法和例句
1. 在从句中的使用
常用于宾语从句、时间从句等:
- I thought you would have arrived by then.
- She wondered if he would have received her letter.
2. 表示预期的完成
用于表达过去对将来完成的预期:
- We expected that they would have solved the problem by the meeting.
- The teacher said we would have learned all the grammar by the end of the term.
3. 虚拟语气中的使用
用于表达与过去事实相反的假设:
- If I had studied harder, I would have passed the exam.
- She would have caught the train if she had left earlier.
注意事项
过去将来完成时通常需要一个明确的时间参照点:
- ✔️ He said he would have finished by Monday.
- ❌ He said he would have finished. (缺少时间参照点)
在时间状语从句中,要用现在完成时而不是过去将来完成时:
- When I have finished (不是 would have finished), I will call you.
- After she has graduated (不是 would have graduated), she plans to travel.
过去将来完成时常与以下时间表达一起使用:
- by then
- by that time
- by the end of...
- before...
- when...