【问题标题】:Void and cout vs intvoid 和 cout 与 int
【发布时间】:2015-03-24 22:32:17
【问题描述】:

我正在处理一项任务,并决定用我的 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 没有用。

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

【问题讨论】:

  • 只调用 srand 一次。
  • 没有足够的代码(答案声明在哪里?)或上下文(谁使用答案以及为什么?)来回答问题。
  • 答案是私有定义的数据成员。答案用于验证用户的输入。

标签: c++ function get set


【解决方案1】:

setter 函数通常不返回任何内容。

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

【讨论】:

  • 好的,谢谢!这是我正在寻找的答案,我会投票,但我没有代表
  • @JackyMoon:作为提出问题的人,您不需要对答案进行投票。相反,您接受最佳答案(复选标记)。
猜你喜欢
  • 2016-01-05
  • 2011-12-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-06-16
  • 1970-01-01
相关资源
最近更新 更多