条件断点中的条件是否只能具有基本数据类型(即int、float、bool等)。例如,我NULL为 a 的对象定义了class MyClassas NULL_OBJ。我的代码中有一个 object MyClass myclassobject。我可以myclassobject==NULL_OBJ在断点中设置条件吗?
2 回答
1
假设您不想将对象指针与空指针进行比较,这很简单;是的,你可以提出这样的条件。
但是,您需要对相关的overload相等运算符:==MyClass
class MyClass
{
public:
MyClass()
{
someMember = 0; // let this be null object condition
}
MyClass(int member)
{
someMember = member;
}
bool operator == (const MyClass &Ref) const
{
return(this->someMember== Ref.GetMember());
}
const int GetMember() const
{
return(this->someMember);
}
private:
int someMember;
};
#define NULL_OBJ MyClass()
通过#define NULL_OBJ MyClass(),您可以定义一个空对象并将其与任何MyClass对象进行比较。
(有参考)
于 2013-07-17T05:18:45.093 回答
0
您可以获取对象的地址并正常进行比较。
于 2013-07-17T05:30:29.260 回答