Ich habe den folgenden Code:Wie beschwört mein Projekt nicht ungelöste Unpünktlichkeiten, wenn Sie nicht dazu aufgefordert werden?
#include <iostream>
extern "C" int calcSum_(int a, int b, int c);
int main()
{
printf("Hello World");
return 1;
}
Warum wird der folgende Code Build gewährt, dass ich keine anderen Quelldateien in meinem Projekt mit einer calcSum_ Funktion in ihnen haben? Es beschwert sich, wenn ich Folgendes versuche:
Baut nicht die Erstellung einer ausführbaren Datei, die ausgeführt werden kann? Bedeutet das nicht das Verknüpfen? Wie kann es ohne Fehler bauen? Warum muss ich meinen Linker "hervorheben", dass die Funktion fehlt?
Wenn Sie die Funktion nie aufrufen, warum sollte der Linker sich darum kümmern, danach zu suchen? –
Uh, vielleicht weil 'calcSum_()! = CalcSum()' (Unterstrich beachten)? – paulsm4
@ paulsm4 mein schlechtes. Ich bearbeite das Hinzufügen der Unterstreichung – Bula