我用C语言编程,使用Source Insight。
我有一个有很多常量的枚举类型(比如100)。我让debug打印输出变量值,但它们(当然)输出为整数。
我想要做的是单击枚举常量的名称,然后看到它的数值显示在某个地方。(我在Visual Studio插件中见过这样做,所以这一定是可能的。)
也就是说,假设我有
enum colors {
ORANGE, PURPLE, PINK
};我想要单击(或选择,或其他) PURPLE,并在可见的地方看到值1 (理想情况下,是符号窗口或上下文窗口,但我并不特别)。
在Source Insight中有什么简单的方法可以做到这一点吗?至少有没有什么困难的方法(比如写一个宏)?
发布于 2010-03-15 19:05:43
我找到的唯一方法是给枚举的每个成员一个特定值-当它找到枚举常量时,它就会出现在上下文窗口中。例如:
enum colors {
ORANGE = 0,
PURPLE = 1,
PINK = 2
};它不是很好,但它是有效的。
似乎可以编写一个宏来弹出一个带有值的消息框,但我无法在3.50.0064中让它正常工作-它似乎认为光标下有错误的枚举。我的测试宏代码是
macro ShowEnum()
{
symbolname = GetCurSymbol()
symbol = GetSymbolLocation(symbolname)
if (symbol == nil)
Msg (symbolname # "not found")
else
Msg (symbolname # " found")
}对我来说,这将从枚举列表中返回一个随机项作为“找到”项。如果返回正确的值,我们可以使用SymbolParent()查找父对象,然后使用SymbolChildren() / SymListCount()遍历子对象
https://stackoverflow.com/questions/2350472
复制相似问题