有没有办法创建一个遵循 C++11/14 标准的
我已经考虑过这个问题了,但是没有找到让它工作的方法。我没有找到一种方法来在
COUNTER()
宏,使它在每次被调用时都会增加一个数字?我已经考虑过这个问题了,但是没有找到让它工作的方法。我没有找到一种方法来在
COUNTER()
宏中存储“状态”。
示例:
#define COUNTER() <...> // Implementation goes here...
#define UNIQUE_NAME_1() TEST ## COUNTER()
#define UNIQUE_NAME_2() TEST ## COUNTER()
// Note how the COUNTER() macro can be used with other macros
// (it cannot be implemented with C++ code)
int main() {
std::cout << STRINGIFY(UNIQUE_NAME_1()) << std::endl;
std::cout << STRINGIFY(UNIQUE_NAME_2()) << std::endl;
}
预期输出:
TEST0
TEST1