Cosa succede se definisco la mia funzione nel mio file .h comeCosa succede con una funzione inline esterna?
extern int returnaint(void);
, definisco nel file .c correlata come
inline int returnaint(void) {
return 1;
}
e includere l'intestazione in un altro file .c e l'uso la funzione? Quando compilo le cose separatamente, creando un file oggetto per ogni file .c e quindi collegandole, è inclusa la funzione inline o cosa succede?
So che il compilatore può ignorare inline
, ma cosa succede se non lo ignora in questo caso?
quindi si ottiene un errore di linker. –
@ H2CO3, non ci sarà mai un errore del linker. L'unità di compilazione con la definizione 'inline' visualizza anche una dichiarazione' extern', quindi un simbolo deve essere emesso. Per favore vedi la mia risposta. –
@JensGustedt Grazie, upvoted. –