Comment pouvez-vous utiliser #import circulaire pour des objets fortement typés en Objective-CComment pouvez-vous utiliser #import circulaire fortement objets typés en Objective-C
J'ai une classe de contrôleur audio, une classe de menu et un Gameview classe.
Le délégué de l'application met en place ces classes et attribue un des pointeurs alors:
la classe de menu est au courant de la classe audio et Gameview la classe Gameview a une référence à la classe audio et le menu
I J'utilise NSObject pour la référence à la classe gameview de la classe de menu. Cela est dû au fait que la classe de menu a une référence à la classe gameview et a une déclaration #import gameview.h. Le code ne sera pas compilé aveC#import circulaire
Suggestions s'il vous plaît :)?
@interface MenuViewController : UIViewController {
NSObject *gameref; // weak type here to avoid include of gameview above
AudioController *audioref;
}
et ...
#import "AudioController.h"
#import "MenuViewController.h"
@interface GameViewController : UIViewController {
MenuViewController *menuref;
AudioController *audioref;
}
Quel est le message d'erreur exact que vous obtenez? En outre, 'id' est le type universel plus standard. Dans ce cas, vous devriez faire comme le suggère jib plutôt que d'utiliser 'id' ou' NSObject * '. – outis
Je recevais un avertissement de compilateur en raison de la dactylographie de gameref en tant que NSObject au lieu d'un gameviewcontroller lors de l'appel d'une méthode – PeanutPower