英语 时间段为for years的句子中的时态必须用have done吗可以用had done吗

如题所述

第1个回答  2013-05-22
不可,for+时间段 是现在完成时的标志词,不能用于过去完成时
现在完成时表示现在之前业已完成的动作,虽然其效果或影响仍然存在但已不再继续,但是有一些现在完成时的句子,在后面加上for+一段时间,则现在完成时的动作就表示延续性.
Thomas has studied Russian. (现在不再学俄语)
Thomas has studied Russian for three years. (=Thomas began to study Russian three years ago, and is still studying it now.
第2个回答  2013-05-22
for years 表示几年了, 句子中的时态可以用过去式, 也可以用过去完成

eg:For years, Campbell survived as a blind woman。
Advocates have laboredforyearsto have intelligent design。

希望对你有帮助哦~
第3个回答  2013-05-22
两者都可以,要看具体的语境。
we haven't met for years.
he had learned English before he went to the USA.
第4个回答  2013-05-22
因为现在完成时的关键词(时间状语)有for,但过去完成时没有关键词(时间状语)for。
相似回答