Как использовать глобальные переменные в x-коде (iphone). Например, скажем, я хочу объявить кучу переменных (NSStrings) в файле viewcontroller, тогда как я могу получить к ним доступ в разных классах? Кто-нибудь может мне помочь?Глобальные переменные?
ответ
Глобальные переменные являются глобальными переменными. Вы используете их так же, как и в любой программе на C, то есть, как правило, они будут объявлены в чем-то вроде «globals.h» и импортированы там, где это необходимо.
Сказанное, как правило, плохой практикой полагаться на глобалы. Возможно, у вас есть объект ApplicationController, который по существу отслеживает глобальное состояние приложения, но его переменные должны быть переменными экземпляра и либо доступны только внутри страны, либо через getters/setters.
Если вы хотите объявить кучу строк в одном объекте, на который ссылаются многие другие объекты, как правило, вы должны сделать этот объект Singleton и передать ссылку на него каждому объекту, нуждающемуся в доступе к нему.
Для того, чтобы получить ответы на эту услугу, необходимо авторизоваться ПОЧЕМУ необходимо, чтобы это сделать, и если это не лучший способ. Я ставлю доллары на пончики, нет веских оснований для того, что вы пытаетесь сделать.
Дайте нам более подробную информацию о том, какая главная необходимость в том, чтобы эти строки были глобальными, и тогда мы можем показать вам причины, почему они этого не делают. :)
Вы можете использовать singleton, если он не слишком завышен. Другой вариант - NSDefaults. Конечно, самый простой способ просто определить экстерном в .h
extern NSString * const STR_1;
и значение в .m:
NSString * const STR_1 = @"String One";
просто декларировать переменные в .h файле, а затем импортировать этот файл в любой класс, который вы хотите использовать. Вы можете сделать любой тип объекта или переменную глобальную.
Если вы объявите переменную в делегатах, вы можете получить доступ к этой переменной в любых других контроллерах, используя методы setter и getter для доступа.
Я надеюсь, это поможет вам.
- 1. Глобальные глобальные переменные Django
- 2. Глобальные переменные
- 3. Глобальные переменные vb.net
- 4. Глобальные переменные/Классы
- 5. Глобальные переменные PHP
- 6. Глобальные переменные GLSL
- 7. gcc, неинициализированные глобальные переменные
- 8. Как создать глобальные переменные?
- 9. Глобальные переменные Ionic 2
- 10. html5 javascript, глобальные переменные
- 11. C# - Winforms - Глобальные переменные
- 12. Глобальные переменные Веб-методы
- 13. стек и глобальные переменные
- 14. Excel VBA Глобальные переменные
- 15. Глобальные переменные/синглеты?
- 16. Определить глобальные переменные рельсы
- 17. Javascript Глобальные переменные сбрасываются
- 18. инициализировать глобальные переменные Нитями
- 19. Производительность JavaScript - глобальные переменные
- 20. CPPUnit - Глобальные переменные
- 21. Почему глобальные переменные плохо?
- 22. глобальные переменные (связывание памяти)
- 23. Когда создаются глобальные переменные?
- 24. Глобальные переменные в MATLAB
- 25. Как сделать глобальные переменные?
- 26. Глобальные переменные CSS
- 27. WordPress и глобальные переменные
- 28. Python Глобальные переменные Confusion
- 29. Динамически устанавливать глобальные переменные
- 30. Valgrind и глобальные переменные
upvote. Так вы объявляете глобальную переменную, но очень вероятно, что theres лучший способ сделать то, что вы пытаетесь сделать. – kubi
В каждом из моих классов (20) у меня есть действие, требующее использования (например) 20 строк. Каждый класс использует одни и те же строки и вместо того, чтобы объявлять их в каждом классе, мне было интересно, есть ли способ просто объявить их один раз, а затем использовать их во всех моих классах. – Roosh