This is a popular saying that generates a lot of arguments every day. Though the correct expression is ‘have your cake and eat it (too)’—where ‘too’ is optional— a number of speakers say it would be logical to say ‘eat your cake and have it’.
Logically, you must have your cake before you can think of eating it, and it’s either you continue to hold it or you eat it—not do both.
The expression means have or do two things that are impossible to have or do together.
Examples:
- You can get a divorce or keep getting hit, you can’t have your cake and eat it too.
- He can’t have his cake and eat it — he should be ready to spend more if he buys an expensive car.