表示对过去的推测can have done,may have done 有什么不同?有的书上说有can not have done 没有can have done迷糊了◑▂◐

问题描述:

表示对过去的推测can have done,may have done 有什么不同?有的书上说有can not have done 没有can have done迷糊了◑▂◐

“can+have+done”表示对过去行为的怀疑,用于疑问句,译成“可能做过……吗?
“could+have+done”是虚拟语气,表示对过去事情的假设,意思是本来能够做某事而没有做。

书上说的是对的, 只有can't have done 不可能做过某事,而没有can have done. 但我们可以说could have done.
could have done = may have done 可能做过某事

书上说的是对的,只有can't have done 不可能做过某事,而没有can have done.但我们可以说could have done.
could have done = may have done 可能做过某事