我知道的唯一好用的是包围守卫(#ifndef).
还有什么需要用宏完成的,不能以更干净的方式实现吗?
宏允许您轻松捕获__FILE__,__LINE__和__func__.呵呵,你可以每次手动编写它们,但坦率地说,这很麻烦,容易出错(__FILE__和__func__都是C-string,所以你可能会混淆它们).