El lenguaje C ++ permite la mezcla de C ++ y C en un archivo fuente. Por ejemplo,
extern "C" {
struct bar { /* ... */ }
}
¿C ++ o alguna vez ha admitido otros "lenguajes de enlace" que no sean C? por ejemplo extern "Pascal"
oextern "Haskell"
extern "C"
solo afecta la vinculación, no la sintaxis y la semántica del texto dentro del bloque. En otras palabras, sigue siendo C ++ dentro de ese extern "C"
bloque; los nombres de los símbolos simplemente no están destrozados. Ver stackoverflow.com/q/1041866/712605
extern "C"
equivalente para interactuar entre sí