Fredrik90 Skrevet 23. desember 2004 Skrevet 23. desember 2004 (endret) hei.. jeg får nå en hel haug med redfefinations over hele koden min hver eneste funskjon skal ligsom være redifinert men det er de ikke. noen som har en pekepinne til hva som kan være feilen. det er så mye kode at jeg ikkke poster den her nå. noen som har en ide. mvh. Fredrik Endret 1. januar 2005 av Fredrik90
A_N_K Skrevet 23. desember 2004 Skrevet 23. desember 2004 Redefinisjon skjer hvis et symbol er definert i flere objektfiler (hver .cpp kompileres til en slik) som linkes sammen, du har vel ikke definert funksjoner i headere (som inkluderes i flere kildefiler) uten å deklarere dem inline (inline vil si at disse funksjonene ikke vil eksistere som funksjoner, men fylles inn i den kallende koden)?
søppel Skrevet 23. desember 2004 Skrevet 23. desember 2004 (endret) Eventuellt kan det være at du har definisjoner av variabler i headerfiler: int a; Dette er både en deklarasjon og definisjon. En deklarasjon av denne typen ser slik ut: extern int a; Endret 23. desember 2004 av søppel
GeirGrusom Skrevet 27. desember 2004 Skrevet 27. desember 2004 Eller at en headerfil blir inkludert flere ganger, uten #pragma once (vet ikke om det er standard)
søppel Skrevet 28. desember 2004 Skrevet 28. desember 2004 (endret) Standard, eller den vanligste måten tror jeg er: #ifndef _MY_HEADER_H_ #define _MY_HEADER_H_ // header-code here #endif // _MY_HEADER_H_ Dette kalles "include guards". Edit: Denne metoden støttes i hvertfall i alle kompilere som følger standaren. Endret 28. desember 2004 av søppel
☀ ❄ Skrevet 31. desember 2004 Skrevet 31. desember 2004 Eller at en headerfil blir inkludert flere ganger, uten #pragma once (vet ikke om det er standard) #pragma er ikke standard. I det hele tatt.
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå