Меню сайта
Категории раздела
HTML [44] |
Visual C++ и MFC [21] |
c++ [78] |
php [19] |
Javascript [15] |
C# [51] |
загрузки [0] |
XNA
[10]
создание игр с помощью xna
|
Наш опрос
Друзья сайта
Статистика
Онлайн всего: 1
Гостей: 1
Пользователей: 0
Реклама
Главная » Статьи » C# |
Урок 28
class Test { static void SomeFunction1(int a) { a=12; //Изменяем копию параметра функции } static void SomeFunction2(ref int a) { a=55; //Изменяем оригинал параметра функции } public static void Main() { int z=23; SomeFunction1(z); Console.WriteLine(z); //Напечатается 23 SomeFunction2(ref z); Console.WriteLine(z); //Напечатается 55 } } Обратите внимание, что при вызове функции SomeFunction2 мы опять используем ключевое слово ref (как и при объявлении этой функции): ... SomeFunction2(ref z); ... Параметр out аналогичен параметру ref, только при его использовании в функцию можно передавать неинициализированные переменные (т. е. переменные с незаданными начальными значениями). Вот пример: class Test { static void SomeFunction2(ref int a) { a=55; } static void SomeFunction3(out int a) { a=66; } public static void Main() { int z=0; //Переменную z надо обязательно инициализировать SomeFunction2(ref z); Console.WriteLine(z); //Напечатается 55 int y; //Переменную y можно не инициализировать SomeFunction3(out y); Console.WriteLine(y); //Напечатается 66 } } При вызове такой функции обязательно использование ключевого слова out. | |
Просмотров: 510 | Рейтинг: 0.0/0 |
Всего комментариев: 0 | |