They will have been married for 20 years by then.他们到那时已经结婚20年。You will have reached Shanghai by this time tomorrow.明天这个时候你已经到达上海。将来完成时的构成将来完成时的构成是由"shall/will + have +过去分词"构成的。Before long he will have forgotten all about the matter.不久他就会全然忘记这件事的。He is somebody now. He will not have remembered his old classmates.他现在是一个有身份的人了,他可能不会记得老同学了。Will you have known Kevin for 10 years next month?到下个月你认识凯文该有10年了吧?将来完成时的用法①表示在将来某一时间之前已完成的动作,并往往对将来某一时间产生影响。Pick me up at 8 o'clock,I will have had breakfast by then.早上8点钟你来接我,到时我已经吃完早饭了。We will have learned 12 units by the end of this term.到这个学期末,我们将学完12个单元。By the time you get home I will have cleaned the house from top to bottom.你到家之前我将把房子彻底打扫一遍。②表示推测,相当于"must have done"结构。You will have heard of this, I guess.我想你已经听说过这件事了。I am sure he will have got the information.我相信他一定会得到这个信息。③.表示某种状态一直持续到说话人所提及的时间。We will have been married a year on June 25th.到6月25日我们俩结婚就满1年了。将来完成时和现在完成时的区分问题:将来完成时表示在将来某一时间“之前”已经完成的动作,那They will have moved to the new house when it has been painted.为什么要用?这句话应该是在将来某一个时间之后才完成的动作啊,还有现在完成进行时,有一条用法是动作从过去持续到现在并有可能持续到将来,这和现在完成时不一样的吗?怎么区分?解答 : 关于将来完成时,你给的定义是正确的,即“表示在将来某一时间“之前”已经完成的动作”。但是给的例句They will have moved to the new house when it has been painted.是错误的。在主句使用将来完成时的时候,时间状语从句的动词必须用一般现在时,而不能用现在完成时。所以是从句里的一般性状态出现的时候,主句里“已经”如何如何了。例如By the time he gets home, she is going to have cleaned the entire house.现在完成进行时强调现在仍持续中。现在完成时强调已完成,但是否持续并不重要。例如I have been working on this topic since last December.现在仍在做,显然还没做完。完成时态的本质思维就是用来回顾的,这一本质思维用在现在完成时中,就是站在现在时间的角度回顾过去。