ごめんごめん途中で送っちゃった。

void foo(bar* param) {
  param->method();
  xxx(param);
}
bar obj;
foo(&obj);

と、

void foo(bar& param) {
  param.method();
  xxx(¶m);
}
bar obj;
foo(obj);

と、結局どっちも同じだけどどっちにすべきか悩む。
なにかこう明確な仕切りとかどうしてる?