我希望make contains函数返回true或false,但它根本不返回任何内容。非常感谢任何帮助!
bool Set::containsElement(int x) const
{
int element = false;
for (int i = 0; i < _numItems; i++) {
if (_items[i] == x)
element = true;
}
return element;
}
// main.cpp
#include <iostream>
#include <cassert>
#include "Set.h"
using namespace std;
int main() {
Set s1, s2, s3;
s1.addElement(7);
s1.addElement(3);
s1.addElement(5);
s1.containsElement(3);
return 0;
}
答案 0 :(得分:2)
当您在main中调用该函数时,您将其调用到no,因此在调用时该值将丢失
答案 1 :(得分:1)
您的函数正确返回值。您只是无法在main()
函数中使用它。你需要做更像
if(s1.containselement(3)))
{
// Do whatever you want now that you know it's contained
}
答案 2 :(得分:0)
首先,所有元素都应声明为&#39; bool&#39;不是&#39; int&#39;
std::cout<< s1.containsElement(3)<<std::endl;
将显示真或假