Having been done ,done,having done 的详细区别

____many times,he still couldn't understand it.
A、Having been told B、Told
为什么答案是A,现在分词完成时的被动,B也可以表示完成和被动啊。
同样,还有一道题:The building____last year is a restaurant.
A、having been built B、built
这道题为什么选B呢?

Having been done 是现在分词的完成时的被动语态,用的时候常常会出现一个段时间状语。如:
Having been built for two years, the building will be used as a hospital
,done是过去分词,表示被动和完成,如
completed last month, the building will be used as a hospital
having done 是现在分词的完成时的主动形式,用的时候常常会出现一个段时间状语。如
Having worked for a long time , the workers are all very tired.追问

____many times,he still couldn't understand it.
A、Having been told B、Told
为什么答案是A,现在分词完成时的被动,B也可以表示完成和被动啊。
同样,还有一道题:The building____last year is a restaurant.
A、having been built B、built
这道题为什么选B呢?

追答

____many times,he still couldn't understand it.句中的many times 是一个段时间状语,只能用Ahaving been told
The building____last year is a restaurant句中last year 不是一个段时间状语,而是一个过去的时刻的状语,只表是过去,所以用Bbuilt
请再比较一下我前面给的例句,与你的上面两个例句并不矛盾!

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