Главная /
C#: ООП и классы /
Проанализируйте приведенный код. delegate void MyEventHandler(ref int a); class MyEvent { public event MyEventHandler SomeEvent; public void OnSomeEvent(ref int d) { if (SomeEvent != null) SomeEvent(ref d); } } class EventTest { static void Handler1(ref i
Проанализируйте приведенный код.
delegate void MyEventHandler(ref int a);
class MyEvent
{ public event MyEventHandler SomeEvent;
public void OnSomeEvent(ref int d)
{ if (SomeEvent != null) SomeEvent(ref d); } }
class EventTest
{ static void Handler1(ref int b) { b = 2 * b; }
static void Handler2(ref int c) { c = c + 12; }
public static void Main()
{ MyEvent evt = new MyEvent();
int a = int.Parse(System.Console.ReadLine());
if (a > 0) evt.SomeEvent += new MyEventHandler(EventTest.Handler1);
else if (a < 0) evt.SomeEvent += new MyEventHandler(EventTest.Handler2);
evt.OnSomeEvent(ref a); System.Console.WriteLine(a);
} }
Пользователь собирается после запуска программы ввести цифру 5
. Укажите результат вывода на консоль после попытки запустить программу на компиляцию и выполнение:
вопрос
Правильный ответ:
программа завершится аварийно
10
22
15
программа не выполняется, так как обнаружена одна или несколько синтаксических ошибок
Сложность вопроса
85
Сложность курса: C#: ООП и классы
79
Оценить вопрос
Комментарии:
Аноним
Я завалил зачёт, за что я не увидел этот сайт с всеми ответами с тестами intuit месяц назад
22 авг 2020
Аноним
Какой студент находит данные тесты inuit? Это же крайне просто
15 сен 2019
Аноним
Это очень легкий решебник по интуиту.
10 мар 2019
Другие ответы на вопросы из темы программирование интуит.
- # Класс, в заголовке которого указан модификатор sealed:
- # Исходный модуль содержит код: class ПРИБОР { public ПРИБОР() { System.Console.Write("ПРИБОР "); } } class ПРИЕМНИК : ПРИБОР { public ПРИЕМНИК() { System.Console.Write("ПРИЕМНИК "); } } class ТЕЛЕВИЗОР : ПРИЕМНИК { public ТЕЛЕВИЗОР() { System.Console.Write("ТЕЛЕВИЗОР "); } } class Program { static void Main() { ПРИБОР P = new ТЕЛЕВИЗОР(); } } Укажите результат вывода на консоль после выполнения метода Main():
- # Исходный модуль содержит классы ClassA, ClassB, ClassC и Program: class ClassA { int a; public int VA { get{return a;} set{a=value;} } } class ClassB : ClassA { int b; public int VB { get{return b;} set{b=value; VA=b+3;} } } class ClassC : ClassB { int c=3; public int VC { get{return c;} set{VB=c+2; c=value; } } } В классе Program определен метод Main, в теле которого находится код: ClassC P = new ClassC(); P.VC = 10; System.Console.Write("{0} {1}", P.VC, P.VA); Укажите результат вывода на консоль после выполнения метода Main():
- # Из приведенных ниже высказываний укажите все истинные высказывания:
- # Проанализируйте приведенную ниже программу и укажите результат после попытки запустить программу на компиляцию и выполнение: using System; class Program { static int[] a = new int[] { 10, 30, 20 }; public delegate void F(); public static void R() { Array.Reverse(a); } public static void S() { Array.Sort(a); } public static void M() { int buf = a[0]; a[0] = a[a.Length - 1]; a[a.Length - 1] = buf; } static void Main() { F f = new F(R); f += S; f -= R; f -= S; f(); for (int i = 0; i < a.Length; i++) Console.Write(a[i]+" "); } }