过去完成时:had done
用以表示截至过去某时为止所完成的动作或状态
例1. He had already left when I came.(我来时他已经离开了)
例2. He had studied English for 10 years before he left for the states(发去美国之前已经学了10年英语)
注意
过去完成时不能单独存在,要与另一个一般过去时或表过去的副词短语连用,即呈现过去不同时间发生的两个动作,先发生的用过去完成时,后发生的用一般过去时。
将来完成时:will have done
表到将来某时为止所完成或仍在继续的动作或状态
状态:He will have worked here for 10 years by the end of this month(到月底他就在这里工作10年了)
动作:
You will have reached Shanghai by this time tomorrow. (明天的这个时候你就到上海了。)