虚拟语气中对过去情况表示虚拟时would have done 和 had done的区别

在 if 引导的条件状语从句中表示对过去的虚拟不可以用 would have done;但是在 wish 的用法中,表示对过去的虚拟 would have done 和 had done 却都能用,这是为什么?且两者有什么区别吗?


请先 登录 后评论

最佳答案 2018-09-15 11:54

    在 if 引导的条件状语从句中表示对过去的虚拟不可以用 would have done;但是在 wish 的用法中,表示对过去的虚拟 would have done 和 had done 却都能用,这是为什么?且两者有什么区别吗?

   【答】在 if 引导的条件状语从句中表示对过去的虚拟,主句中是可以用 would have done的。例如:I would have failed if you hadn't helped me then . 那时要是没有你帮我的话,我早就失败了。(摘自《外研社英汉多功能词典》2008年7月第1版)

    wish用一般现在时,从句中用would have done表示过去未实现的愿望,用had done表示对之前事态的懊悔。例如:I wish that you could have called / would have called yesterday (but you didn't).I wish I hadn't spent so much money.= I'm sorry I spent so much money. (摘自《英语语法与用法》p.1070,北京师范大学出版社2011年4月第1版)

请先 登录 后评论

其它 1 个回答

陈才   - 英语教师
擅长:中考英语,词法问题

在 if 引导的条件状语从句中表示对过去的虚拟不可以用 would have done;但是在 wish 的用法中,表示对过去的虚拟 would have done 和 had done 却都能用,这是为什么?且两者有什么区别吗?

解答如下:

你的提问可以归纳为以下2种情况

(1)if引导条件虚拟句

A:如果是对过去虚拟或者假设,从句用过去完成时态,主句用would have done

If I were a bird, I would fly to America.

B:如果是对现在虚拟或者假设,从句用一般过去时态(be只能用 were,)主句用would+动词原形

If he had come here, he would have helped me with it.

C:如果是对将来拟或者假设,从句用(should+动词原形;were to +动词原形),主句用would +动词原形

If he were to come tomorrow, he would help me with it.


(2)wish动词的宾语从句虚拟句

用于wish后面的从句,表示与事实相反的情况,或表示将来不太可能实现的愿望。其宾语从句的动词形式为:

(1)表示与现在事实相反

主句谓语动词为一般现在,从句谓语动词为一般过去式(be的过去式为 were)

(2)表示与过去事实相反

主句谓语动词为一般过去,从句谓语动词为过去完成时式(had + 过去分词)

(3)表示与将来事实相反

主句谓语动词为一般现在,从句谓语动词为would +动词原形

I wish I were as tall as you. 我希望和你一样高。

He wished he hadn't said that. 他希望他没讲那样的话。

I wish it would rain tomorrow. 我希望明天下雨就好了。

在 wish 的用法中,表示对过去的虚拟时would have done是否能够使用?如果可以,和had done有什么区别?

wish 宾语从句中不可以使用would have done 表示对过去的虚拟,只可以使用had done sth 结构表达对过去事实虚拟和假设。

请先 登录 后评论
  • 3 关注
  • 1 收藏,41084 浏览
  • steamgear 提出于 2017-01-17 10:42

相似问题