référence d'adresse fileExistsAtPath:isDirectory:, vous pouvez attribuer une valeur au paramètre de type (par exemple, le pointeur bool *example) par (par exemple, *example = YES), modifiant ainsi le variable externe (telle que Say, la valeur de votre isDir).
Parce que fileExistsAtPath:isDirectory cette méthode doit changer la valeur de isDir, si vous transmettez directement isDir (équivalent à transmettre directement une valeur BOOL), cela ne fonctionnera pas, alors utilisez &isDir pour remplacer isDir L'adresse est transmise à la méthode, afin que la méthode puisse attribuer ou modifier la variable enregistrée à cette adresse. La fonction de & ici est d'obtenir l'adresse de isDir. Pourquoi '&' (esperluette) est-il placé devant certains paramètres de méthode ?
Dans la méthode
Parce que
fileExistsAtPath:isDirectory
cette méthode doit changer la valeur deisDir
, si vous transmettez directementisDir
(équivalent à transmettre directement une valeurBOOL
), cela ne fonctionnera pas, alors utilisez&isDir
pour remplacerisDir
L'adresse est transmise à la méthode, afin que la méthode puisse attribuer ou modifier la variable enregistrée à cette adresse. La fonction de&
ici est d'obtenir l'adresse deisDir
.Pourquoi '&' (esperluette) est-il placé devant certains paramètres de méthode ?