C++在基类调用派生类函数的办法(非构造函数)

  • Post author:
  • Post category:其他


#include <iostream>

using std::cout;

namespace {

class d;

class b {
public:
    b();
    void ef(d&, void(d::*)());
};

class d : public b {
public:
    d();
    void print();
};

b::b() {}

void b::ef(d& dobj, void(d::*f)()) {
    (dobj.*f)();
}

d::d() : b() {}

void d::print() {
    cout << "WORKS\n";
}

} // anon

int main() {
    d obj;
    obj.ef(obj, &d::print);
}



版权声明:本文为m0_54948954原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。