目前,我正试图解决一个问题,我想防止变量的重新定义。目前,我已经通过令牌粘贴来避免重新定义,它可以将任何给定的东西“粘贴”到变量名中。但是,我不希望在同一范围内超过一个变量。
当前解决方案(这些变量由宏粘贴,我不自己定义):
{
mytype mt_2; // 2 is pasted
mytype mt_3; // 3 is pasted
}我找到了__if_not_exists,我认为它可以解决我的问题,但是,Microsoft docs状态
将__if_not_exists语句应用于类内部或外部的标识符。不将__if_not_exists语句应用于局部变量。
我的问题是,为什么我应该而不是这样做呢?有没有人使用这个语句,或者能告诉我这个语句的正确用例?
我能找到的唯一(部分/推测)答案是[在此]
编辑1:我真正想要完成的任务:
{
Logmacro(); // Logmacro() indents and logs
Logmacro(); // Logmacro() should only log
{
Logmacro(); // Logmacro() indents and logs
}
}发布于 2020-07-14 09:05:00
https://stackoverflow.com/questions/62891290
复制相似问题