考虑以下类,
template <class L>
class A {
public:
A(L l) : _l(l) {}
private:
L _l;
};
class B {
public:
B(int x) : _x(x), _a([this]() { return _x; }) {}
private:
int _x;
A<???> _a;
};
我不确定如何在???. std:: function<int()>有效,但据我所知,这意味着虚函数调用(当然,这不一定是坏事,但如何正确地做到这一点会很有趣)。