C extern deklarieren aber wo

Gast #1316591
Lesenswert?

Hallo Leute,

eine Frage: Ich mache gerade ein Projekt mit anderen Entwicklern einer 
anderen Firma. Jetzt soll mein Modul als Objektcode übergeben werden um 
es einzubinden (kein C Code).

Mein Modul soll Variablen anderer Module verarbeiten, sodass ich mir nun 
die Frage stelle, ob man:

a) die Headerdateien der anderen Module, in denen die Variablen 
vorkommen bei mir einbindet (diese müssen dann natürlich extern 
deklariert sein), oder

b) ich die Variablen in meiner Headerdatei als extern deklariere und sie 
damit einfach annehme ?

Was ist besser ? Was würdet ihr tun ? Wo können Probleme auftreten 
(ausser dass alles eindeutig definiert sein muss) ?

Vielen Dank und Grüße
Gast #1316611
Lesenswert?

Man definiert ein Interface, ein API, und liefert den C-Programmierer 
dafür eiene C-Headerdatei in der deine Funktionen mit ihren übergebenen 
Datentypen deklariert sind.

In welcher Form das API ist, ob native C-Funktionen mit übergebenen 
C-Strukturen, ob C++-Klassen, ob COM Objekte, stimmt man mit den Leuten 
ab.

Werte werden also übergeben, bei vielen Werten wird ein Verweis auf die 
Struktur übergeben oder eine Struktur zum einfüllen zur Verfügung 
gestellt.

Bei OBJ muss man auch darauf achten, welche LIBraries die ihrreseits 
wieder sehen wollen, es ärgert, wenn das eine eingebundene OBJekt 
plötzlich massenhaft LIBraries benötigt, die das Hauptprogramm gar nicht 
braucht, womöglich noch eine eigene Speicherverwaltung, GUI-API oder 
managed code.

Antwort schreiben

Bitte melde dich an, um einen Beitrag zu schreiben.

oder

Mit Google-Account einloggen

Die Registrierung ist kostenlos und dauert nur eine Minute.

Jetzt registrieren