Как сделать так, чтобы переменная была доступна из всех методов программы??
чтобы ее можно было изменять, смотреть???
Другие языки программирования и технологии
C# методы
Взято из инета.
Глобальные переменные в C#
Просто подумайте и ответьте себе на следующие вопросы:
1. Действительно ли нужно, чтобы к переменной мог быть доступ откуда угодно? Если нет, то создайте свойство у какого-нибудь самого подходящего класса.
2. Может переменная по смыслу относится к какому-то классу? Если да, то опять же создайте свойство у какого-нибудь самого подходящего класса.
3. Может у вас код логики в классах с визуальным интерфейсом? Если да, то лучше удалить код, и начать писать заново, только проектировать код, а не лепить.
Если ты сейчас думаешь "да задолбал ты, просто скажи, как сделать глобальную переменную или метод", то в таком случае просто говорю:
В таких случаях в C# и других реально объектных языках используют статичные переменные и методы. Просто создайте файл, в который будете кидать весь свой глобальный мусор:
namespace GlobalTrash
{
class MyGlobalTrash
{
public static int MiGlobalVariable;
public static void MiGlobalFunction()
{
}
}
}
Теперь в любом месте программы вы можете обратиться к переменным и методам так: GlobalTrash.MyGlobalTrash.MiGlobalVariable = 10;. Но еще раз хочу посоветовать создавать глобальные переменные только в крайнем случае.
В принципе, можно не создавать отдельный класс и namespace, а использовать класс Program, который итак уже есть в программе в файле Program.cs.
Глобальные переменные в C#
Просто подумайте и ответьте себе на следующие вопросы:
1. Действительно ли нужно, чтобы к переменной мог быть доступ откуда угодно? Если нет, то создайте свойство у какого-нибудь самого подходящего класса.
2. Может переменная по смыслу относится к какому-то классу? Если да, то опять же создайте свойство у какого-нибудь самого подходящего класса.
3. Может у вас код логики в классах с визуальным интерфейсом? Если да, то лучше удалить код, и начать писать заново, только проектировать код, а не лепить.
Если ты сейчас думаешь "да задолбал ты, просто скажи, как сделать глобальную переменную или метод", то в таком случае просто говорю:
В таких случаях в C# и других реально объектных языках используют статичные переменные и методы. Просто создайте файл, в который будете кидать весь свой глобальный мусор:
namespace GlobalTrash
{
class MyGlobalTrash
{
public static int MiGlobalVariable;
public static void MiGlobalFunction()
{
}
}
}
Теперь в любом месте программы вы можете обратиться к переменным и методам так: GlobalTrash.MyGlobalTrash.MiGlobalVariable = 10;. Но еще раз хочу посоветовать создавать глобальные переменные только в крайнем случае.
В принципе, можно не создавать отдельный класс и namespace, а использовать класс Program, который итак уже есть в программе в файле Program.cs.
Лучше так вообще не делать. Тем более переменную, константу ещё куда ни шло.
В C# нет глобальных переменных, но есть статические:
public class Globals
{
public int my_global_variable;
}
Доступ:
Console.WriteLine(Globals.my_global_variable);
public class Globals
{
public int my_global_variable;
}
Доступ:
Console.WriteLine(Globals.my_global_variable);
Объявить ее как глобальную.
Похожие вопросы
- C# методы типов разновидность ??
- C++ расчет площади методом монте-карло
- c#. Сортировка массива в отдельном методе. Консольное приложение.
- (C++) Нужна помощь в создании метода "пузырька".
- Объясните новичку на простом языке что делает метод Convert.ToInt32 на C#
- Учусь програмировать на C++ по книге "C++ для чайников".Проблема.
- Зачем нужен C++, если есть C?
- Помогите срочно C#
- Помогите исправить ошибку в программе (c++).
- Ещё тупой вопрос по C++ :)