我正在尝试在c ++中为数组创建一个add函数

时间:2012-05-12 19:22:47

标签: c++ arrays

此add函数将采用单个参数,该参数将是要添加到数组的项目。我已经尝试过使用for循环,但它没有像我预期的那样工作。我目前正在尝试做这样的事情:

    bool homeworklist::add (homework h)
    {
    int i = 0;

    if(current_size < LIST_MAX){

        current_size += 1;

        list[i] = h;

        ++i;

        return true;
    }
    return false;
}

current_size只是一个计数器。 list是属于homeworklist类的数组 list接收作业对象。 如果成功添加了对象,则该函数返回true;如果未正确添加,则返回false。

1 个答案:

答案 0 :(得分:1)

变量i是本地的,这意味着每次调用此函数时,由于这一行,它被初始化为0:

int i = 0;

这反过来意味着在随后的if语句中,您将元素分配到第一个位置,每次

您可以使i成为类成员,就像您声明current_size的方式一样。或者你可能只能使用current_size本身。