任意类型(例如C ++ std :: string相等)上的GDB条件断点
是否可以在条件表达式包含任意类类型的对象的GDB中设置条件断点?
我需要在函数内部设置一个断点,条件将检查条件是否是对象的成员字符串变量等于“ foo”。因此,类似:
condition 1 myObject->myStringVar == "foo"
但这不起作用。GDB是否只允许在基本类型和char *类型上使用条件断点?有什么办法可以在非原始类型上设置条件断点?
回答:
有什么办法可以在非原始类型上设置条件断点?
是的,一种实现方法是将非原始类型转换为原始类型,在您的情况下转换为char*
,并用于strcmp
比较字符串。
condition 1 strcmp(myObject->myStringVar.c_str(),"foo") == 0
以上是 任意类型(例如C ++ std :: string相等)上的GDB条件断点 的全部内容, 来源链接: utcz.com/qa/430960.html