如何从函数对象内部调用函数对象?看来我不能使用this
。例子:
class factorial {
public:
int operator()(int n) {
if (n == 0)
return 1;
return n * ??(n-1);
}
};
我该放在什么地方??
?
#include <iostream>
class factorial {
public:
int operator()(int n) {
if (n == 0)
return 1;
return n * (*this)(n-1);
}
};
int main()
{
std::cout << factorial()(5) << std::endl;
}
对我来说效果很好。活生生的例子。 http://coliru.stacked-crooked.com/view?id=3ae0c6e8fb2d091f64563c8e14a14fd5-b24e7def60aba11ee8094350eb73164e
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)