老师好。我曾了解到动名词的完成时用来体现该动作发生在谓语动作之前,比如这样的例句,He regretted not having gone to university. /I appreciate having been given the opportunitiy to study aboard. 都是完成时动作先于谓语动作。 然而,像这样的句子,Do you remember John and his father coming to see us last Christmas?这里的coming to...肯定是发生在remember之前了,而且还应该是间隔着不短的时间,可却没有用having come 来表示,我觉得很奇怪。
动名词的完成体在非正式语体可以用一般体形式代替。所以在非正式语体中,动名词doing形式就可以表示先于谓语动作时间发生过的事件。但是在比较正式的语体中,动名词表示先于谓语时间的时间还是要用动名词完成体的。例如:
I remember having seen him before.
I remember seeing him before.
这二个句子的意思是相同的,区别只在于上句是正式语体,下句是非正式语体。
如果觉得我的回答对您有用,请随意打赏。你的支持将鼓励我继续创作!