返回一个布尔函数

时间:2016-04-23 02:14:52

标签: c++ boolean

我希望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;
}

3 个答案:

答案 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;

将显示真或假