如何解决lint错误“引用初始化导致const / volatile完整性丢失”

时间:2015-08-13 14:32:34

标签: c++ c++11 c++14 pc-lint

PC-lint给了我以下错误:

error 1561: (Warning -- Reference initialization causes loss of const/volatile integrity (arg. 'this'))

处理此代码的最后一行时:

auto sortedIter = std::find( _sortedSelectedItems.begin(), _sortedSelectedItems.end(), i );
if ( sortedIter != _sortedSelectedItems.end() )
            _sortedSelectedItems.erase(sortedIter); // here the lint issue appears

其中_sortedSelectedItemsstd::vector<SmartPointer<DataItem>> 知道为什么会出现这个错误以及如何修复它?

修改

此代码不在const成员函数中。

1 个答案:

答案 0 :(得分:0)

因为您正在使用标有const的函数修改类成员。

自从您更新了帖子后,我们继续讨论有关您的不完整代码段的下一个问题:如何定义_sortedSelectedItems。