3 过去时情态助动词could/would/should/might+have+done这种形式为什么可以表示现在或将来的虚拟呢

You could have come yesterday/today/tomorrow.

(You had the opportunity to come, but you didn't take it.).

 

She ought to/should have gone to the dentist tomorrow.

(But she has cancelled the appointment.)

 

Bill would/might have bought a motorbike last year/now/soon. (But he was in a bad crash last January.)

 

If I had won the lottery, I would/should/might/could have bought a yacht last year/next year.

 

If my father were alive, he would have been going next year.

 

以上例句都来自于章振邦新编高级英语语法195页。

我所不能理解的是:

过去时情态助动词could/would/should/might+have+done这种形式

要么是表示站在现在的=说话者当时的时间角度来对已经发生的事情作相反的假设

就是传统语法上所说的虚拟语气;

要么是表示站在现在的=说话者当时的时间角度来对已经发生的事情进行推测。

 

所以,为什么上面的例句都可以后接现在或将来时间状语呢?

现在或将来时间状语表明还没有发生这和过去时情态助动词could/would/should/might+have+done这种形式表示过去虚拟或过去推测

不是矛盾了吗?

请先 登录 后评论

最佳答案 2021-04-24 17:23

这样说吧,我们学英语学的是主流表达。偶尔遇到一些“灰色”地带的,略知即可,只要不是现象级的,我们就不必花时间和精力来研究。如果哪天你在最新发行的英语报刊,杂志上发现很多这种用法,那我们再来研究。


也许一百年前会有小说里写:

If I had won the lottery, I would have bought a yacht next year.


但当今英语中已经没人这么用了。或者你搜索下10年内BBC/CNN的文章,看看有没有?

请先 登录 后评论

其它 0 个回答

  • 1 关注
  • 1 收藏,1927 浏览
  • Long2019 提出于 2021-04-10 11:44