the dream he had had for so many years ended there.为什么两个had呢?

问题描述:

the dream he had had for so many years ended there.为什么两个had呢?

The dream (that) he had had for so many years ended there 省略了that,这里(that) he had had for so many years 是定语从句,因为后面有表示期限的for many years,所以用完成时,而后面ended是过去式,所以用过去完成时
had done 第一个had是助动词,第二个是have的过去分词

had had 是过去完成时,就是说他过去一直有着这个梦想很多年了

the dream he had had for so many years ended there.这是过去完成时had done第一个had是had done的had,第二个had是实意动词have的过去分词done形式had,其现在完成时态是have had,过去完成时had done他那么多年的梦...