Можно ли сделать псевдоним для переменной в C #? - PullRequest
5 голосов
/ 09 января 2011

Предположим, что в приложении winform есть program.cs:

static class Program
{
    public static SomeClass someClass;

    [STAThread]
    static void Main()
    {
        //something
    }
}

чтобы использовать someClass в других классах в текущем проекте, мы должны получить доступ Program.someClass

вопрос в том, можем ли мы создать псевдоним для Program.someClass, как, например, c1 и использовать в коде c1 вместо Program.someClass?

Ответы [ 3 ]

6 голосов
/ 09 января 2011

Если вы просто хотите использовать псевдоним для удобства запястья, сделайте это как встроенный делегат, например:

Func<SomeClass> c1 = () => Program.someClass;

Но я согласен, что это делает ваш код менее понятным в большинстве случаев.

2 голосов
/ 09 января 2011

Предполагая, что вы хотите достичь чего-то вроде макросов в C / C ++, а также хотите избавиться от «Программы» как области именования, я думаю, что вы не можете сделать это в C #.

2 голосов
/ 09 января 2011

Просто передайте этот объект каждому классу, который должен с ним работать

...