Можно ли разделить структуру C на C ++ и использовать указатели на структуру в C-коде?
Есть ли побочный эффект в этом:
Код C:
struct foo {
int k;
};
int ret_foo(const struct foo* f){
return f.k;
}
Код C ++:
class bar : public foo {
int my_bar() {
return ret_foo( (foo)this );
}
};
Там'сextern "C"
вокруг кода C ++, и каждый код находится внутри собственного модуля компиляции.
Это переносимо через компиляторы?