would have done和 should have done的区别是什么?意思分别是什么

如题所述

would/should + have + 过去分词 这是虚拟语气的一种用法。

would have done :表示对过去事情的假设,意思是“本来会做”。
比如:
I would have told you all about the boy's story, but you didn't ask me. 我本来会告诉你这个小男孩的故事,但是你没有问我。

should have done: 表示对过去事情的假设,意思是本来能够做某事而没有做。含有指责对方或自责的含意。
比如:
Tom, you are too lazy. The work should have been finished yesterday. 汤姆,你太懒惰了,这项工作本来应该昨天就做完的。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2010-05-22
would have done是过去将来完成时,是一种时态。would是will的过去式。
而should have done的should,有实意,是应该的意思。表示应该做某事却没有做。
第2个回答  2010-05-21
should have done 表示 应该做而没做
would have done 是过去完成时
第3个回答  2020-05-09
都是虚拟语气,should have done比would have done语气强烈一点
相似回答