My lecturer has asked me that in class, and I was wondering why is it a macro instead of a function?
Why is assert a macro and not a function?
Because it should compiled in DEBUG mode and should not compiled in RELEASE mode.