@evgenyt2000

Можно ли объявлять делегат в одном классе (методы там же), а создавать переменную, присваивать адрес метода, вызывать в другом классе?

Можно ли объявлять делегат в одном классе (методы там же), а создавать переменную, присваивать адрес метода, вызывать в другом классе?
Cитуация следующая,:
Есть неймспейс и два класса, во втором майн. Все методы в первом классе. И хочется объявить делегат и т.д. там, а использовать в другом классе, но как-то не получается, все примеры которые я видел в рамках одного класса...:-(
  • Вопрос задан
  • 303 просмотра
Решения вопроса 1
@kttotto
пофиг на чем писать
Есть такое понятие, как "область видимости". Если тип делегата внутри класса, то получить его можно только через экземпляр этого класса, т.е. через объект типа это класса. Чтобы иметь возможность создать делегат в другом классе, надо либо сам делегат вынести из него, либо, как я уже говорил, обратиться к экземпляру класса.
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
lexxpavlov
@lexxpavlov
Программист, преподаватель
А кто вам мешает так делать?.. Делегат можно объявить вообще не в классе, а просто в неймспейсе. Ведь делегат - это просто сигнатура метода (количество и типы аргументов метода).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы