Palabra clave "estática" para variables globales: ¿a qué es el alcance limitado?
-
14-11-2019 - |
Pregunta
Prefijarse Una variable declarada fuera de cualquier alcance con la palabra clave estática Evita que la variable sea accesible externamente.Sin embargo, ¿limita el alcance de una categoría usándola?
Foo.m
@implementation Foo
static void* FooContext = &FooContext;
- (void)methodThatUsesFooContext { ... }
@end
Foo+SpecialSauce.h
@implementation Foo (Special Sauce)
- (void)anotherMethodThatWouldLikeToUseFooContext { ... }
@end
Solución
Las variables estáticas declaradas en el nivel superior de un archivo (es decir, fuera de las funciones o llamadas de método) son visibles para cualquier cosa dentro de ese archivo.
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow