Ok, here it is:
'I have a cold' and 'I've got a cold' are really the same thing. You're still ill.
'I've had a cold' means you were ill until very recently, but now you're OK.
'I had a cold' means, well, it's all finished. When? No idea.
Practical use:
So, if someone tells you, 'I've got coronavirus' or 'I have coronavirus', I really hope you're just talking on the phone. If not, I hope you didn't just shake their hand or lick their face. And if they did either of those, even knowing at the time that they had coronavirus, it means they reeeeeaaaally don't like you.
On the other hand, if they said 'I've had coronavirus', you can feel pretty safe. All the same, don't get too friendly with them.
If they say 'I had coronavirus', you're definitely safe now. Go ahead and lick them.
Comments