C++ 布尔查找函数未在数组中搜索
我想为我的类创建一个find函数,该函数搜索一个项目数组,如果找到,则返回1,否则返回0 这里是我的代码,但始终返回0:C++ 布尔查找函数未在数组中搜索,c++,C++,我想为我的类创建一个find函数,该函数搜索一个项目数组,如果找到,则返回1,否则返回0 这里是我的代码,但始终返回0: // implementation file bool bag::find(string item_name) { for (int i = 0; i < 5; i++) if (arr[i] == item_name) return true; return false; } //实现文件 bool bag:
// implementation file
bool bag::find(string item_name)
{
for (int i = 0; i < 5; i++)
if (arr[i] == item_name)
return true;
return false;
}
//实现文件
bool bag::find(字符串项目名称)
{
对于(int i=0;i<5;i++)
if(arr[i]==项目名称)
返回true;
返回false;
}
字符串arr[5]={“a”、“b”、“c”、“d”、“e”}
阵列的最大大小为5
// main
cout << find("a");
//main
不能只使用std::find
:
bool bag::find(std::string item)
{
return std::find(arr, arr + 5, item) != &arr[5];
}
我假设arr
是一个C样式的数组,除非您另有说明。如果您将数组定义为具有元素类型char,那么实际上您的函数将无法工作,因为char类型的对象不能隐式转换为std::string类型。显示arr
数组。arr是什么类型的。code是什么right@MichaelKrelin-黑客bag
可能是一个名称空间:总之,展示完整的真实(非)工作可能是有用的。如果没有一个完整的,我们不能帮助你。虽然不值得投反对票,但我认为这不是一个好的答案。它不涉及理解问题。