在lldb中使用匿名枚举作为函数参数时出错

时间:2014-07-04 12:39:00

标签: c++ xcode debugging lldb

我有一个类MyClass,其中包含一个重载[]运算符,该运算符采用MyEnum类型的匿名枚举。我可以在代码中使用它,但不能使用lldb检查对象。当我尝试时,我收到以下错误。 。

(lldb) p myObject[MyEnum::value]
error: no viable overloaded operator[] for type 'MyClass'
note: candidate function not viable: no known conversion from 'int' to 'MyEnum' (aka '<anonymous enum>') for 1st argument

有人可以解释为什么调试器不能正确转换枚举吗?

[xcode 5.1.1]

1 个答案:

答案 0 :(得分:2)

您似乎需要强制转换枚举:

p myObject[(MyEnum)MyEnum::value]
           ^^^^^^^^