有这样一道考题:
We took what he said literally, which _______ a mistake.
A. may be B. may have been
C. can be D. can have been
选项 C 和 D 可以排除,因为情态动词 can 表推测时通常不用于肯定句。但对于 A 和 B 呢?我们应该根据前面的过去式 took 来决定答案应选 B 吗?
1. 答案应选 B:
其根据确实是前面句子中的过去式 took,即根据 took 用的过去式可知,情况发生在过去,这说明后面句子的推测也是针对过去情况作出的,故用“情态动词+完成式”来表示。
2. 句子意思是:
We took what he said literally, which may have been a mistake. 我照字面意思来理解他所说的话,这可能是错的。
3. 类似用法如:
He may have lost his way. 他可能迷路了。
He may have been mistaken about what he saw. 他可能看错了。
She may have been sent to work elsewhere. 她可能被派到别处工作去了。
He may have been there a month ago. 他也许一个星期以前就去过那儿。
The injury may have caused brain damage. 受伤可能造成了脑损伤。
You may have noted that my address has changed. 你也许已经注意到我的地址变了。
I may have hurt your feelings but such was certainly not my intention. 我或许伤害了你的感情,但那绝非我的意图。
He may have missed the train, in which case (=and it that case) she won’t arrive for another hour. 他可能错过火车了,那样的话他就会还要等1个小时才会来。