在有些项目里,接口已经定义好,我们想修改已经存在的接口,是比较困难的,假如有如下的接口定义: void handler(int &r) { r++; } template void g(F f, P p) { f(p); } 调用如下: int i = 0; handler(i); // 期望的结果 g(handler, i); // 打印i,看看结果,没有变化。不是期望的结果 // 在不改变接口的情况下,达到期望的结果 g(handler, std::ref(i));//期望的结果 赞微海报分享
近期评论