h1-mod/deps/sol2/examples/source/docs/inheritance.cpp
2024-03-07 00:54:32 -05:00

33 lines
425 B
C++

#define SOL_ALL_SAFETIES_ON 1
#include <sol/sol.hpp>
struct A {
int a = 10;
virtual int call() {
return 0;
}
virtual ~A() {
}
};
struct B : A {
int b = 11;
virtual int call() override {
return 20;
}
};
int main(int, char*[]) {
sol::state lua;
lua.new_usertype<B>("A", "call", &A::call);
lua.new_usertype<B>("B",
"call",
&B::call,
sol::base_classes,
sol::bases<A>());
return 0;
}