英文语法问题having done与have been doing的区别She has apparently been dozing and,having come to just as the sentence ended,was attempting to cover for her inattention.书上说having done是非谓语动词做状语表示动作在谓语动作之前的用法,是现在分词的完成形式,have been doing这个是现在完成进行时不用说了,可是上面的例句里having come to...似乎是与前面的has been dozing一样都是主语she的谓语呀?为什么前一个用现在完成进行时,后一个用现在分词的完成式?究竟二者用法之间有什么区别呢?

问题描述:

英文语法问题having done与have been doing的区别
She has apparently been dozing and,having come to just as the sentence ended,was attempting to cover for her inattention.
书上说having done是非谓语动词做状语表示动作在谓语动作之前的用法,是现在分词的完成形式,have been doing这个是现在完成进行时不用说了,可是上面的例句里having come to...似乎是与前面的has been dozing一样都是主语she的谓语呀?为什么前一个用现在完成进行时,后一个用现在分词的完成式?究竟二者用法之间有什么区别呢?

在这句话中,首先看到中间有个and,这其实就表明这是两个独立完整的句子连在一起表达,也就是说(1)She has been dozing(2)Having come to just as the sentence ended,she waws attempting to cover for her inattention.后面那个having.其实是伴随状语,并不是谓语,这个having是动名词.