By the time you arrived in London, we () in Europe for two weeks.A. have stayedB. will have stayed.为什么选B?从句为什么用过去时,而主句用将来时?

问题描述:

By the time you arrived in London, we () in Europe for two weeks.
A. have stayed
B. will have stayed.
为什么选B?从句为什么用过去时,而主句用将来时?

B.
Because they are some future assumption

应该用would have stayed

选B,虚拟语气,主句可以用将来完成时,当然用would have stayed更好.