multiple definition of ...
-
hola leute
hab mit ne Helper.h angelegt, wo ich bestimmte template- und string-funktionen abgelegt habe.
eine davon heisst strcmpncs, die eigendlich das gleiche macht wie strcmp, nur das sie halt nicht zwischen gross und kleinbuchstaben unterscheidet.
wenn ich nun die Helper.h einbinde kommt immer die Fehlermeldung:
K:\Txl\TxlString\Release\TxlString.o(.text+0x0):TxlString.cpp: multiple definition of `strcmpncs(char const*, char const*)' K:\Txl\TxlString\Release\Main.o(.text+0x0):Main.cpp: first defined herebei den anderen funktionen kommt das jedoch nicht.
funktionen sind auch alle zwischen #ifndef und #endif.weiß jemand rat ?
Meep Meep
-
Sag jetzt bitte nicht, du hättest die Implementation in die Headerfile reingepackt?!?
-junix
-
Zeige doch mal Ausschnitte von den zwei Dateien (main.cpp und txlstring.cpp, evtl. helper.h).
Wie es jedoch aussieht, hast du aber schon die Funktion (strcmpncs()) in der main.cpp definiert und willst es nun erneut machen in der txlstring.cpp.
Da mekert aber nun der Linker.
Schau dir daher mal die zwei Dateien genauer an.
Oder zeige etwas mehr Code.
-
re
noe, hab den fehler gefunden
#ifndef TxlHelperH #define TxlHelpreHso kanns natuerlich ncht funktionieren
@junix: noe hab ich nicht
Meep Meep
-
hmm.. ich verstehe immernoch nicht, warum sich zuvor der Linker beschwert hat.
Nur die Include Guards richtig zu setzen, ist doch da egal, weil es ja zwei verschiedene ÜEs sind.
Kann mir das einer mal erklären?