consider the following where a C (not C++) struct supports function ptrs. but C doesn't support inline defined functions nor constructor
supporting function pointers is probably key to enabling early development of C++ translated to C
#include <stdio.h>
void
myFunc (void) {
printf ("%s:\n", __func__);
}
struct My {
void (*f) (void);
};
struct My my;
int
main (void)
{
my.f = myFunc;
(*my.f)();
return 0;
}