done 是一个过去分词,及物动词的过去分词表被动,不及物动词的过去分词表一完成动作 done和having been done两者都表示过去,两者几乎没啥区别,几乎可以通用,如在选择题中两者同时出现,having been done强调比主要谓语动词先发生,而done则没有。如两个谓语动词有明显的先后则用having been done,如没有明显的先后则都数时候用done. 这是我老师教我的,我也刚高考完,报考英语系,以上如有不足,敬请见谅!
done既可表完成也可表被动,但表被动的时候比较多.having be done表正在进行的完成.具体要用的时候要看语境.举例子的话,我现在一时也想不到,但这种语态在考试中不太常考.做题时如果遇到,你可以把done( 表过去和已完成)和having be done(表正在进行的完成)带入翻译一下,感觉哪个比较说的通就选哪个.我刚高考完,我们做题时就是这样做的.我不是老师,也许说的不是很准确,但希望我的回答对你的理解有帮助!