英语吧 关注:1,538,465贴子:11,395,916
  • 6回复贴,共1
求助

求助to have done用法

只看楼主收藏回复

I’m sorry to hear that
这个hear 与说话时 时间间隔较小 用todo
那么如果todo动作与说话时间隔较长 是否用to have done
比如I’m sorry to have lied to you 是否正确


IP属地:山东来自iPhone客户端1楼2024-04-16 10:25回复
    英语中,使用不定式(to do)和完成不定式(to have done)来表达遗憾或道歉时,确实与时间因素有关。不过,这种用法更多地与动作是否已发生、是否已完成有关,而不是仅仅基于与现实说话的时间间隔长短。
    当我们想要表达一个尚未发生的动作或者是一个习惯性行为时,我们通常使用简单的不定式(to do)。例如:
    - I'm sorry to hear that.(听说那件事我很难过。)这里,“hear”的动作是在说话时刻之后进行的,但重点是这个动作还未发生。
    而当我们想要表达一个已经完成的动作,即强调动作的完成状态时,我们使用完成不定式(to have done)。这通常用于对过去某个时间点的行为的道歉或遗憾。例如:
    - I'm sorry to have lied to you.(我很抱歉之前对你撒了谎。)在这里,“lie”的动作发生在过去的某个时间点,并且已经完成,所以用“to have lied”。
    因此,是否使用“to do”还是“to have done”主要取决于你想要表达的是未来的行为还是过去的已完成的行为,而不仅仅是基于与现实说话时间的间隔。所以,你的例子 "I'm sorry to have lied to you" 是正确的,因为你是在为过去的撒谎行为道歉,那个撒谎的行为在时间上先于你道歉的时刻,且已经完成。


    IP属地:广东来自Android客户端2楼2024-04-19 10:50
    收起回复
      简单回答你。。。。I’m sorry to have lied to you 这个句子是正确的。 。。。。


      IP属地:四川3楼2024-04-20 09:05
      回复