表示现在时间的虚拟,为什么可以用If had done...would have done这种形式呢

...When it (the train) started again, Blake put on his coat and reached for his raincoat.

"Where are you going ?" She said.

"I'm going to the next car."

"...Don't move or I'll kill you..."

Blake sat back abruptly in his seat.

If he had wanted to stand and shout for help, he would not have been able to. His tongue had swelled to twice its size, and when tried to move it, it stuck

horribly to the roof of his mouth. His legs were limp.

-John Cheever: The Five-Forty-Eight

章振邦新编高级英语语法195-196页说:

这里的If he had wanted to stand and shout for help, he would not have been able to.是表示现在时间的非真实

表示现在时间,为什么可以用If had done...would have done这种形式呢?

我不能理解,既然是表示现在时间,为什么不说成:If he wanted to stand and shout for help, he would not be able to.呢?

请先 登录 后评论

最佳答案 2021-04-16 18:14

作者在讲故事,整个场景都是过去发生的事,用的是一般过去时表示过去。此时用虚拟语气都是与过去事实相反,怎么能说是与现在事实相反呢。如果if从句和主句分别用didwould do, 则不是虚拟语气,而是陈述语气表示真实条件了。你的理解是错误的。

请先 登录 后评论

其它 0 个回答

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