「情態動詞+ have done」用法總結
【歸納】
★could have done可以表示「過去本來能夠做某事而實際上沒有做」。如:
I could have come here a little earlier, but I’m late because of the bad traffic.
★must have done表示對過去已經發生過的情況的肯定推測,語氣較強。如:
She must have received the book; I sent it a month ago.
★may / might have done表示對已經發生過的情況的肯定推測,語氣稍弱。might have done還可表示「本可能做某事而實際上沒有做」。如:
She didn’t come on time. She may / might have missed the bus.
He might have given you more help, but he was very busy then.
★should / ought to have done表示「本該做某事而實際上沒有做」,其否定形式表示「本不該做某事而實際上做了」,通常含有責備的意思。如:
The flowers have died. I should / ought to have watered them often.
You shouldn’t / ought not to have told them the truth.
★needn’t have done表示「本不必做某事而實際上做了」。如:
It is warm today. You needn’t have worn your coat.
注意:didn’t need to do與needn’t have done都表示「過去不必做某事」,但didn’t need to do通常表示「沒必要做,實際上也沒做某事」,而needn’t have done則表示「雖然沒必要做,但已經做了某事」。如:
He didn’t need to get up early on Sunday, so he stayed in bed until 10 am.
It’s only five minutes』 walk. We needn’t have taken a taxi.
【即學即練】用「情態動詞+ have done」結構完成下列句子。
1. You ________ (wash) the wound with cold water, but you used hot water.
2. I am not feeling well in the stomach. I ________ (eat) so much just now.
3. There was enough time. You ________ (hurry).
4. I ________ (lend) you the money. Why didn’t you ask me?
5. They ________ (go) out because the light’s out.
答案【即學即練】
1. should / ought to have washed
2. shouldn’t / ought not to have eaten
3. needn’t have hurried
4. could / might have lent
5. must have gone