Как я могу создать метод, к которому я могу получить доступ как статический класс? - PullRequest
0 голосов
/ 13 января 2012

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

код

functions.move(Vector2Position)

Проблема в том, что я не могу использовать конструкторы экземпляров в статическом методе. Есть ли способ сделать это, или я должен буду сделать что-то еще?

РЕДАКТИРОВАТЬ:

Мне нужно иметь возможность вызывать это вне текущего класса.

1 Ответ

4 голосов
/ 13 января 2012

Посмотрите на Статические конструкторы и Статические классы на MSDN. Короче говоря:

Вы можете объявить статический класс с помощью ключевого слова static. Это указывает на то, что класс не может быть создан. Обратите внимание, что статический метод может существовать и в обычных классах, а не только в помеченных как «статические».

static class MyClass
{
    private static int value;
    public static int GetValue() { return value; }
}

Вы можете иметь статический конструктор, если вам нужно каким-либо образом инициализировать класс:

// Static constructor
static MyClass()
{
    value = 1;
}

Затем вы вызываете метод с кодом ниже. Это может быть сделано где угодно - в любом другом статическом или экземпляре метода.

int someValueSomewhere = MyClass.GetValue();
...