C ++ list remove_if编译错误

时间:2013-03-03 14:50:56

标签: c++ list

我为以下代码获取的错误消息是:

    error C2662: 'DamageNumbers::IsAlive' : cannot convert 'this' pointer from 'const DamageNumbers' to 'DamageNumbers &'
1>          Conversion loses qualifiers

bool CheckDamageNumbersAlive(const DamageNumbers& e)
{
    return !e.IsAlive();
}

当IsAlive()为该列表中的对象返回false时,我想从列表中删除对象。

1 个答案:

答案 0 :(得分:6)

你的方法

bool DamageNumbers::IsAlive() {...}

应该是const:

bool DamageNumbers::IsAlive() const {...}