我的代码中有一个 c 风格的宏,它打印日志。我想更改宏以打印 this 指针。但是,有一部分代码不是类的成员函数,或者有些是静态函数。因此,在我的宏中,我想检查当前代码行是否在成员函数内。可能吗?
最佳答案
没有。顾名思义,预处理器首先运行。将标记序列解释为类定义是由编译器完成的,编译器在预处理器之后运行。因此,预处理器不知道类、函数、变量或任何其他 C++ 结构。
顺便说一句,在一个类中,您仍然有 static
方法,它们也没有 this
指针。
关于c++ - 是否有宏或规定来检查代码行是否在类中?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35173850/