The macro version is for printing the variable's name.
But it also has a function version.
Why this library has some other macros is written in my new comment.
Also, (though I hadn't mentioned competitive programming before my new comment,) as far as competitive programming is concerned, I prefer `dump()` to operator<<, which has more letters/types(`cout << variable << endl;`).