Besoin de précisions sur le type void !
zenx
Membre
Bonsoir !
Lorsque je crée une méthode par exemple qui affiche un cercle, celle-ci pourrait se présenter sous la forme suivante :
- (void)drawCircle;
Cette méthode éxecute une action mais ne renvoie rien. Ma question en fait se porte sur ce qui suit. Il s'agit du header de la classe NSValue :
/* NSValue.h
Copyright (c) 1994-2005, Apple, Inc. All rights reserved.
*/
#import <Foundation/NSObject.h>
@class NSString, NSDictionary;
@interface NSValue : NSObject <NSCopying, NSCoding>
- (void)getValue:(void *)value;
- (const char *)objCType;
@end
@interface NSValue (NSValueCreation)
- (id)initWithBytes:(const void *)value objCType:(const char *)type;
+ (NSValue *)valueWithBytes:(const void *)value objCType:(const char *)type;
+ (NSValue *)value:(const void *)value withObjCType:(const char *)type;
@end
Quelle différence y a t il entre un objet de type (void *) et un objet avec le type id ?. Qu'est ce qu'un objet de type (const void *) ?. J'aimerais également si possible avoir des exemples concrets d'objets void et const void.
Merci d'avance !
Lorsque je crée une méthode par exemple qui affiche un cercle, celle-ci pourrait se présenter sous la forme suivante :
- (void)drawCircle;
Cette méthode éxecute une action mais ne renvoie rien. Ma question en fait se porte sur ce qui suit. Il s'agit du header de la classe NSValue :
/* NSValue.h
Copyright (c) 1994-2005, Apple, Inc. All rights reserved.
*/
#import <Foundation/NSObject.h>
@class NSString, NSDictionary;
@interface NSValue : NSObject <NSCopying, NSCoding>
- (void)getValue:(void *)value;
- (const char *)objCType;
@end
@interface NSValue (NSValueCreation)
- (id)initWithBytes:(const void *)value objCType:(const char *)type;
+ (NSValue *)valueWithBytes:(const void *)value objCType:(const char *)type;
+ (NSValue *)value:(const void *)value withObjCType:(const char *)type;
@end
Quelle différence y a t il entre un objet de type (void *) et un objet avec le type id ?. Qu'est ce qu'un objet de type (const void *) ?. J'aimerais également si possible avoir des exemples concrets d'objets void et const void.
Merci d'avance !
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Il représente un pointeur sur des données dont on ne connait pas le type, ou dont on se fout royalement du type.
Quand id, c'est un pointeur typé : le type de ce pointeur est une structure représentant un objet en Objectve-C.
.