这里的had不是过去完成时。这里的had只是动词have的过去式。表示have(有)这个动词的过去式。 You had a visit from the stork yesterday. 这句话的意思是,昨天有Stork那边的人来拜访你。 表示的是have—— 有的意思。就如同句子:I have an idea. 我有一个主意。 I have a sister.我有个姐姐。 跟这里have的用法一样。
而你说的过去完成时,则是另外一种用法 had+done(动词的分词形式) 表示过去的事情之前发生的事情。 例如:I had left by the time he got there.意思是:他当时到之前,我就已经离开了。 所以你的问题的根源在于,have这词有两种用法,一个作为动词“有”使用,另一个则是表示过去完成时这样一个结构时需要用到的词。
had 不是看成过去完成时,是看作实意动词have 的一般过去时,句中时间状语yesterday 也可以说明 have a visit 拜访 如果是过去完成时,应该这么说:you had had a visit (第一个had 是完成时态的助动词have 的一般过去时had ,因为是过去完成时。第二个had 是实意动词have 的过去分词,即你理解的had 加过去分词)
注意have 既可以作为实意动词,也可以作为助动词
第2个回答 2011-07-28
这里had是动词have的过去式,visit用的是名词 have a visit=pay a visit =visit(这里visit是动词) visit有动词和名词两种词性, pay/have a visit 在这里visit当名词用