could have done与might have done的区别是什么?
could have done和might have done的区别:含义不同、用法不同、侧重点不同
一、含义不同
could have done
本能够做
might have done
过去可能做
二、用法不同
could have done
could (不能用 can) have done 表示“过去本能够做某事却未做。”
注意:其否定形式 couldn't have done 没有虚拟语气的用法,couldn't have done 只能表推测,相当于 can't have done,意为:“过去不可能做了某事。”
I think that he couldn't have gone abroad. I saw him just now.
我认为他不可能出国了。我刚才还看见他了。
might have done
might (不能用 may) have done 表示“过去本可以做某事却未做。”
注意:其否定形式 might not have done 没有虚拟语气的用法,might not have done 只能表推测,相当于 may not have done,意为:“过去可能没有做某事。”
I can't find my keys. I might have left them at the school yesterday.
我找不到我的钥匙了。我可能昨天把他们落在学校了。
三、侧重点不同
could have done
后接完成时的用法:在否定句或疑问句中表示对过去发生过的事情的“怀疑”或“不肯定”的态度。
在肯定句中,可以表示过去可能做到而实际并没做到的事情,有“劝告”或“责备”的语气。
might have done
后接完成时的用法:表示对过去某事的推测,认为某一件事情在过去可能发生了。如果使用might,语气就比较婉转或更加不肯定。
可以表示过去本来可以做到而实际没有做到的事情,有“劝告”或“责备”的语气。