Void 和 cout 与 int

Void and cout vs int

我正在做一项作业,并决定用我的 POD 检查以下问题。作业基本上需要生成一个乘法问题并永远循环,这取决于他是对还是错。 因此生成我的问题:

int Elementary::setProblem()
{
 srand ( time(NULL));
 firstfactor = rand() %1;
 secondfactor = rand() %1;
 answer = factor1 * factor2;
 return answer;
}

但是,有人告诉我这种方法是正确的做法:

void Elementary::setProblem()
{
    srand ( time(NULL) );
    firstfactor = rand()%10;
    secondfactor = rand()%10;
    answer = firstfactor * secondfactor;
}

她基本上告诉我,answer = 已经设置了私有成员,return 没有用。

我的方法不是更快吗,因为我不必设置问题然后再创建第二个函数来解决问题?

setter 函数通常不会 return 任何东西。

成对的 setter 和 getter 函数的全部意义在于,您调用一个来设置某些内容,调用另一个来取回值。这样,例如,您可以完全避免存储 answer,而只是在实际需要时在 getter 中计算它 - 在这种特殊情况下,这可能没有任何好处,但在某些情况下,这可能是一个好处。