Je suis nouveau à Objective C et ont l'erreur suivante lorsque vous essayez d'importer une classe définie par moierreur c Objectif lien avec l'erreur double symbole
Building target “MusicCube” of project “MusicCube” with configuration “Debug” — (1 error) cd /Users/varsha_vijay/Downloads/MusicCube setenv MACOSX_DEPLOYMENT_TARGET 10.5 setenv PATH "/Xcode3.1.4/Platforms/iPhoneSimulator.platform/Developer/usr/bin:/Xcode3.1.4/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin" /Xcode3.1.4/Platforms/iPhoneSimulator.platform/Developer/usr/bin/gcc-4.2 -arch i386 -isysroot /Xcode3.1.4/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator3.1.sdk -L/Users/varsha_vijay/Downloads/MusicCube/build/Debug-iphonesimulator -F/Users/varsha_vijay/Downloads/MusicCube/build/Debug-iphonesimulator -filelist /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/MusicCube.LinkFileList -mmacosx-version-min=10.5 -framework Foundation -framework UIKit -framework OpenGLES -framework QuartzCore -framework AudioToolbox -framework CoreGraphics -framework OpenAL -o /Users/varsha_vijay/Downloads/MusicCube/build/Debug-iphonesimulator/MusicCube.app/MusicCube ld: duplicate symbol _num_flight_vertices in /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/Flight.o and /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/EAGLView.o collect2: ld returned 1 exit status ld: duplicate symbol _num_flight_vertices in /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/Flight.o and /Users/varsha_vijay/Downloads/MusicCube/build/MusicCube.build/Debug-iphonesimulator/MusicCube.build/Objects-normal/i386/EAGLView.o collect2: ld returned 1 exit status Build failed (1 error)
Voici la façon dont mon programme est organisé.
1. Je fichier d'en-tête défini ac vertices.h
#ifndef VERTICES_H
#define VERTICES_H
const int num_flight_vertices = 8;
#endif
2. J'importe ce fichier d'en-tête dans ma classe Flight.h
#import "vertices.h"
@interface Flight : NSObject {
3. J'importe ce vol. h fichier dans ma classe EAGLView.h
#import "vertices.h"
@interface EAGLView : UIView {
@private
Flight *flight;
lorsque je compile ceci, j'obtiens l'erreur.
Quelqu'un peut-il m'aider avec ceci.
Merci, VJ
Puisque vous le déclarez externe, la protection #ifndef n'est pas nécessaire. "extern" signifie "je vais lui donner une valeur ailleurs". Vous pouvez le faire autant que vous le souhaitez. Dans ObjC, vous n'avez généralement pas besoin de beaucoup de protection #ifndef en raison de l'utilisation de #import de toute façon. –