在 if 引导的条件状语从句中表示对过去的虚拟不可以用 would have done;但是在 wish 的用法中,表示对过去的虚拟 would have done 和 had done 却都能用,这是为什么?且两者有什么区别吗?
在 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版)
在 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 结构表达对过去事实虚拟和假设。
如果觉得我的回答对您有用,请随意打赏。你的支持将鼓励我继续创作!