View Full Version : Invocare da un file C una funzione di un file C++
Salve, c'è un modo per invocare da un file C compilato con gcc una funzione (globale, non di una classe) che è definita in un file compilato con g++? Il contrario lo si puo fare dichiarando le funzioni C con extern "C"; quello che voglio io si puo fare?
/\/\@®¢Ø
04-12-2004, 18:50
La mia puo' apparire una risposta ovvia, ma hai provato con
extern "C++"
:D
Battute a parte dovrebbe funzionare proprio cosi' (almeno col gcc), ma non l'ho mai provato.
GioVesas
05-12-2004, 09:52
La definizione che si deve fare è tipo la seguente
extern "C" bool __stdcall MyFunction(parametrs)
{
.
.
.
.
return true;
}
per evitare la tipica "decorazione C++" a livello di globale
ha funzionato, ma invece di usare
__stdcall
che mi dava errore in fase di compilazione ho dovuto usare
__attribute__((__stdcall__))
(sono sotto linux con gcc)
facendo un po di prove ho visto che basta
extern "C"
prima della definizione della funzione nel file c++ perchè questa possa essere chiamata da un file C; i vari file oggetti engono linkati come moduli c++
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.