为什么有时候是have done?有时候是have been done?
3个回答

have done和have been done最大的区别就是一个表主动,一个表被动

但你的例句里是固定短语“be married"表状态,也可改成:

they have got married for 20 years.它们都是主动,只是一个表状态,一个表动作HAVE BEEN MARRIED.在结婚这个状态10年了

我已经结婚10年了,是一种状态,HAVE BEEN MARRIED.在结婚这个状态10年了