string input;
string code[4];
if (code.find(o) == input.find(o))
{
}
对于这一行,它给出了错误:request for member 'find' in 'code', which is of non-class type 'std::string [4]'
字符串input
和字符串code
都包含string
个值。
答案 0 :(得分:2)
编译器告诉你code
是一个字符串数组,所以你需要像
code[someIndex].find(o) == ....
答案 1 :(得分:0)
错误说明全部,code
是std::string
使用
进行比较 code[i].find(o)
i
=循环索引
答案 2 :(得分:0)
只需阅读错误:
错误:请求'code'中的成员'find',这是非类型的'std :: string [4]
它告诉你:
code
的类型为std::string [4]
(这是一个包含4个std::string
个对象的数组)find
只需为要调用find
的字符串选择正确的索引或进行循环:
for (int i = 0; i < 4; i++)
if (code[i].find(o) == input.find(o))
// ...
请注意,如果可以,您应该尝试避免使用C风格的数组并使用std::array
(因为C ++ 11)或std::vector
而不是。