I've created a simple C-struct based v-table object and a C++
virtual class with the same methods. C and C++ apps could link both variants and apply native C or C++ method invocations to the same object pointers.
I run some tests on Windows X64 + ARM64 and on Linux x64 + ARM32 + RISC-V. No crashes, all succeeded.
Now I know: My virtual C++ classes have a C interface too. It's not a standard, but implemented by standard compilers. Nice! 🤓
https://bitbucket.org/gatenetwork/gate-blog-classroom/src/master/c_cpp/vtable_interfaces/