C++ og ANSI C i samme miljø.
Jeg har flere gange været ude for, at være nødt til at mixe gammel ANSI C kode med C++ kode. Det skaber næsten altid problemer med linkeren, når man kalder en ANSI C funktion fra C++ (og omvendt).
Få at undgå disse problemer, har jeg fundet, at det bedst altid, at tage højde for “blandings miljøet” ved at inddele mine header filer i en ANSI C og en C++ del.
Dette er vist med nedenstående kode snippet.
/****************************************************************************************************************************
* ANSI C Types
****************************************************************************************************************************/
#ifdef __cplusplus
extern “C” {
#endif
// Your functions declarations + what is ANSI specific here !!!
#ifdef __cplusplus
} //end extern “C”
#endif
/****************************************************************************************************************************
* C++ Types
****************************************************************************************************************************/
#ifdef __cplusplus
// C++ specific code here
#endif // End __cplusplus