错误 C2039:“查找”:不是“标准”的成员
Posted
技术标签:
【中文标题】错误 C2039:“查找”:不是“标准”的成员【英文标题】:error C2039: 'find' : is not a member of 'std' 【发布时间】:2012-03-26 07:10:38 【问题描述】:我刚刚遇到一个奇怪的错误,说 find 不是 std 的成员。
error C2039: 'find' : is not a member of 'std'
错误 C3861:“查找”:未找到标识符
基本上,我想在向量中查找是否可以找到字符串
知道为什么会这样吗?代码辅助告诉我std中有find方法。
所以这基本上就是我所做的:
#include "OperatorUtil.h"
#include <iostream>
#include <string>
#include <stdlib.h>
#include <math.h>
#include <sstream>
using namespace saeConfig;
namespace operatorUtil
bool isIn(const Filter filter, const SearchKey key)
bool result = false;
string dimensionStr = key.dimensions.getValue(filter.getFilterKey());
if(filter.getFilterValues().size()>0)
vector<string> vstr= filter.getFilterValues();
std::vector<string>::iterator it; // Iterator
it = std::find(vstr.begin(), vstr.end(), dimensionStr); //ERROR LINE
// Check do we have the object in the queue
if(it == vstr.end())
result =true;
return result;
【问题讨论】:
你试过谷歌搜索吗?此外,此代码示例不可编译,因为我没有您的其余代码。为将来尝试发布sscce.org 代码示例 - 给出正确答案要容易得多。 【参考方案1】:std::find
在<algorithm>
标头中定义。添加到开头:
#include <algorithm>
【讨论】:
@Rudy 因为 C++ 标准说 std::find 在 标头中。以上是关于错误 C2039:“查找”:不是“标准”的成员的主要内容,如果未能解决你的问题,请参考以下文章
错误:C2039:“指针”:不是“QJsonObject::iterator”的成员
错误 C2039:“会话”:不是“pjsua_call”的成员
Visual Studio 2008,错误 c2039:“set_new_handler”:不是“std”的成员
qt 错误 多继承 造成错误:error C2039: “qt_metacall“: 不是 “xxxxxx“ 的成员