为什么setter方法应该使用地址而不是值?

时间:2018-01-24 22:04:21

标签: c++ class oop reference

我正在查看一些包含大量getter和setter的大类源代码。所有的人都看起来像这样:

void setIntegerVar(const int &var) {local_var = var;}

宣布setter的论点是这样的地址背后的动机是什么?为什么不呢

void setIntegerVar(int var) {local_var = var;}

我认为答案是因为后者不是对内存的有效使用,而是将var复制到调用者存储它之外的其他地方。在任何一种情况下,为什么const都是必要的?

0 个答案:

没有答案