将成员项不必要地传递给成员函数的后果是什么(除了糟糕的代码):
struct foobar
{
char * arr; //properly initialized to SIZE at some point
}
class foo
{
public:
void bar(foobar&);
foobar barfoo;
};
void foo::bar(foobar& barf)
{
cin.get(barf.arr, SIZE, '\n');
cin.ignore(100, '\n');
}
有什么理由不完全消除参数bar
而直接调用barfoo
吗?如果有的话,不这样做的后果是什么?