DEV Community

Discussion on: Help fix my bloated C++ macros!

Collapse
 
wovo profile image
Wouter van Ooijen

Within the macro body, you use

  • FILE, LINE
  • var-args
  • return statement

With these premises, I don't see how you could win anything unless you can really redo your exception handling approach. You are at a local optimum.

Personally I would not use var-args and a return statement within the macro body, but I have no alternative for FILE/LINE. That alone forces the use of a macro.

Did you consider using exceptions instead of codes? But you would still need a macro to supply the FILE/LINE.

Thread Thread
 
mortoray profile image
edA‑qa mort‑ora‑y

I might indeed be near a local optimum. THe requirement ofr FILE/LINE, and lazy evaluation are forcing my hand.

I'm converting some of my code to use return values here instead of exceptions, since the exceptions are kind of wrong. I'm basing this on th enumber of places that need to handle the exceptions. The code has to handle these returns for other reasons anyway (failed is just one status of many).

I guess I live with it for now. :(