ago 可以在现在完成时态使用吗?

照文法规定表示过去的副词如ago, yesterday, last night等,是不能和现在完成时态同用的,如我们不可以说 He has left two days ago. 为什么Maugham 在 Christmas Holiday 中又有It's bee n decided long ago that the only liberty worth anything is the liberty to do right 的说法呢?
请先 登录 后评论

最佳答案 2020-08-02 19:46

 ago, before作副词时有何不同的用法?

作副词时,都有“以前”的意思。其用法区别如下,

1. ago和一般过去时连用,表示现在以前的时间,一般不用于完成时态,但可用在情态动词加完成时不定式结构里,表示现在对过去某事的推测和判断。例如:

Faber must have seen her a month ago.费伯一个月前一定见过她。

2. before表示在早先或过去某时间的“以前”,也可泛指“从前”,用于在完成时、过去完成时或过去时。例如:

I have read it before.

I didn't know that before.

比较:

Herbert said that his mother had died five years before. (距他说话时五年)

His mother died five years ago. (距现在五年)


当before用作连词时,有如下几种用法:

1.“在……之前”。例如:

We do want to buy something now before prices go up.在物价

涨之前,我们确实想买点东西。

2. 引深为“与其……宁可……”。例如:

He will starve before he will steal.他宁可饿死,也不愿偷。

3.“…(之后)…”,主句一般是肯定句。例如:

It will be five years before we meet again.五年后我们才会重新见面。

It was evening before we reached the little town.到晚上我们才到达那个小镇。

4.“(不多久)就…”,主句一般是肯定句。例如:

It was not long before he told us about this affair.不多久他就给我们谈了此事。

I hadn't waited long before he came.(=He came a short time after

I had begun to wait for him.) 我没等多久他就来了。


请先 登录 后评论

其它 2 个回答

曹荣禄  
擅长:动词用法,句法问题

你需要了解的是:现在完成时说话人关心现在,所以排斥确切的过去时间状语。

ago通常被一个确切的时间修饰,如3 days ago, 100 years ago, 于是这个状语指向一个确切的过去时间,这有悖于现在完成时的用法。

但long ago 意为 很久以前,这并不是确切的过去时间,而是一个不确切的过去时间。而现在完成时是可以和不确切的过去时间连用的。例如:

I have seen it before.

I have written to him twice since he left. (写信的动作发生在他离开到现在这段时间内的不确切的某个过去时间。

 

请先 登录 后评论
Jajil  
擅长:词法问题,句法问题,百家讲坛

根据coca语料库,现在完成时+long  ago 的很少见。 甚至出现了The guy with the golden retriever. The bodybuilder. You have not met 2 days ago?这种句子。不要当成一般情况对待。语言在进化,虽然从语义上加ago比较好理解,只不过作为学习者主要应遵循一般原则。

请先 登录 后评论
  • 0 关注
  • 1 收藏,12783 浏览
  • Nancy wenwen 提出于 2020-05-21 15:59

相似问题