Пренос аргумената по референци - квиз¶
- да се аргументи пренесу по вредности
- Не.
- да се аргументи пренесу по референци
- Тачно!
- није могуће да се измене сачувају у стварним аргументима
- Не.
- измене се свакако чувају у стварним аргументима
- Не.
Q-91: Када у методу мењамо вредности аргумената, да би се измене сачувале у стварним аргументима, потребно је:
- 78
- Не.
- 88
- Тачно!
- 89
- Не.
- 77
- Не.
Q-92: Шта исписује следећи програм?
using System;
class Program
{
static void f1(ref int a) { a++; }
static void f2(int a) { a++; }
static void Main()
{
int a = 7;
f1(ref a);
Console.Write(a);
f2(a);
Console.Write(a);
Console.WriteLine();
}
}
- 5 8
- Не.
- 6 8
- Не.
- 5 9
- Тачно!
- 6 9
- Не.
Q-93: Шта исписује следећи програм?
using System;
class Program
{
static void f(int a, ref int b)
{
a++;
b++;
}
static void Main()
{
int x = 5, y = 8;
f(x, ref y);
Console.WriteLine(x + " " + y);
}
}
- la la la mi mi mi
- Не.
- la la la mi mi
- Не.
- la la la mi
- Не.
- la la la
- Тачно!
Q-94: Шта исписује следећи програм (водите рачуна о томе да метод IspisiVisePuta није написан како треба)?
using System;
class Program
{
static void IspisiVisePuta(ref int n, ref string s)
{
while (n > 0)
{
Console.Write(s + " ");
n--;
}
}
static void Main()
{
int n = 3;
string s1 = "la", s2 = "mi";
IspisiVisePuta(ref n, ref s1);
IspisiVisePuta(ref n, ref s2);
Console.WriteLine();
}
}
- Програм не може да се покрене, јер стварни аргумент није променљива
- Тачно!
- Програм исписује 5
- Не.
- Програм исписује 4, јер константа не може да се мења
- Не.
- Програм пукне у току извршавања (runtime error)
- Не.
Q-95: Шта се дешава при покретању следећег програма?
using System;
class Program
{
static void f(ref int a) { a++; }
static void Main()
{
Console.WriteLine(f(ref 4));
}
}