关于非谓语动词的问题

关于非谓语动词的问题书上说动作未发生用不定式,动作正在进行用现在分词,动作完成且被动用过去分词,但是having been done 不也是现在分词的完成被动吗?它和过去分词有什么区别?做题的时候怎么选择用哪个?

having been done 和 done都是非谓语动词,表达完成和被动。
如果是作定语修饰名词时,过去分词done可以而having been done 不可以。如:The building built last year is a hospital. 去年建成的那座楼是一所医院。这句话中built last year不可换成 having been built。
作宾语补足语时一般只用过去分词done,不用having been done。如:I’ll have my watch repaired. repaired 不可换成having been repaired.
作状语时,通常表示原因时用现在分词完成被动式。而用在表示条件时用的过去分词。
Given me more time, I will do it better. 多给我点时间我会做得更好。(条件状语)不可写成Having been given more time,...
再如:Having been written in haste, the article was full of mistakes. 这文章由于仓卒写就,因而错误百出。在强调原因时应用现在分词完成时。追答

如有疑问,欢迎追问,有问必答!

追问

明白了,谢谢

追答

不客气,也得谢谢你的采纳。

温馨提示:答案为网友推荐,仅供参考