Я делаю программу, которая проверит существование строки в массиве строк. Я сделал простую функцию, чтобы сделать так:Сбой функции C++ isMember
bool isMemberOfArrayStr(std::string str, std::string array[256]){
for(int i=0;array->length()<10;i++){
if(array[i]==str){
ret=true;//A global variable that will be reset to false after the function call
}
}
return ret;
}
Определение функции не вызывает никаких ошибок, но вызов:
if(neighbors[2] == isMemberOfArrayStr(neighbors[2], validTokens))
{
std::cout <<"true"
}
Вызывает ошибку во время выполнения «неисправность Сегментация: 11». Я не уверен, в чем проблема, и помощь будет приятной.
Я советую вам включить в себя код 'using namespace std;', чтобы избежать 'std ::' постоянно. –
@ Vkt0rS. Никогда не рекомендуйте это. ['using namespace std' - плохая практика программирования.] (http://stackoverflow.com/questions/1452721/why-is-using-namespace-std-considered-bad-practice) – 0x499602D2
@ 0x499602D2 - это плохая практика. заголовок, но не так плохо в .cpp – Sean