Разница между out и ref в C

Оглавление:

Разница между out и ref в C
Разница между out и ref в C

Видео: Разница между out и ref в C

Видео: Разница между out и ref в C
Видео: КЛЮЧЕВОЕ СЛОВО OUT C# | РАЗНИЦА между REF и OUT C# | C# ОТ НОВИЧКА К ПРОФЕССИОНАЛУ | # 44 2024, Ноябрь
Anonim

Ключевая разница - out и ref в C

C - современный язык программирования, разработанный Microsoft. Он используется для разработки различных приложений для настольных компьютеров, Интернета и мобильных устройств. Функции или методы - это понятие в программировании. Эта группа операторов, которые используются для выполнения конкретной задачи, известна как функция или метод. В программах C выполнение начинается с main(). Это пример метода. При вызове метода данные передаются в метод или принимаются от метода. Метод, вызывающий новый метод, называется вызовом метода. Новый метод известен как вызываемый метод. Для управления передаваемыми значениями и получения результата C использует параметры. Это оцениваемые параметры, выходные параметры и эталонные параметры. Параметры значения используются для передачи параметров в метод по значению. Ссылочные параметры используются для передачи параметров в метод по ссылке. Выходные параметры используются для передачи результата обратно из метода. В C ключевое слово out используется для выходных параметров, а ключевое слово ref используется для ссылки на параметры. Ключевое различие между out и ref в C заключается в том, что out - это ключевое слово, используемое для ссылки на выходной параметр, который используется для передачи результатов из вызываемого метода в вызывающий метод, а ref - это ключевое слово для ссылки на ссылочный параметр, который используется для передачи. данные от вызывающего метода к вызываемому методу и для получения данных от вызываемого метода к вызывающему методу.

Что нового в C?

Синтаксис функции или метода следующий. Метод имеет ряд элементов, таких как имя метода, список параметров, тип возвращаемого значения и спецификатор доступа.

(список параметров)

{ //операторы для выполнения

}

Каждый метод имеет уникальный метод для вызова функции. Исполняемые инструкции заключены в фигурные скобки. Тип возвращаемого значения объясняет, возвращает ли функция значение или нет. Когда нет возвращаемого типа, он называется недействительным. Спецификатор доступа используется для указания доступности метода в приложении. Параметры используются для получения или передачи данных методу. Также могут быть методы без параметров. Параметры могут быть оцениваемыми параметрами, выходными параметрами или эталонными параметрами.

Разница между out и ref в С
Разница между out и ref в С

Выходные параметры используются для передачи результатов вызывающему методу. Для этого параметр должен быть объявлен с ключевым словом out. Выходной параметр не создает новое место хранения. Как правило, метод возвращает одно значение. Но в C можно вернуть два значения из функции, используя выходные параметры. См. приведенную ниже программу.

namespace application1{

Расчет общедоступного класса{

public void display(out int a, out int b){

целое значение=5;

a=значение;

b=значение;

а=а а;

b=bb;

}

public static void main(String args){

int значение1=10, значение2=20;

Расчет cal=new Calculation();

cal.display(out value1, out value2);

Console. ReadLine();

}

}

}

Функция отображения вызывается из основного метода. Значение1 и значение два имеют значения 10 и 20, но они не учитываются в методе. Значение a равно 25, и значение b также равно 25 в функции. Таким образом, эти значения возвращаются. При печати значения1 и значения2 он не выдаст 10 и 20. Вместо этого он выведет 25 и 25. Используя ключевое слово out, из метода можно вернуть несколько значений.

Что такое ref в C?

При передаче параметров по значению для каждого параметра создается новое место хранения. Фактические параметры, отправленные из основной программы, не изменяются. Вместо этого эти значения копируются в отдельное место. Эти новые копии переменных называются формальными параметрами. См. приведенный ниже код.

namespace application1{

Расчет общедоступного класса{

public void swap(int x, int y){

int temp;

temp=x;

x=y;

y=темп;

}

public static void main(String args){

Расчет cal=new Calculation();

int p=2;

int q=3;

cal.swap(p, q);

Console. WriteLine(p);

Console. WriteLine(q);

Console. ReadLine();

}

}

}

Согласно приведенной выше программе, класс Calculation имеет метод swap(). В основной программе создается объект типа Расчет. Есть два значения, такие как p и q. Переменная p имеет значение 2, а переменная q имеет значение 3. Эти два значения передаются методу swap. В методе swap значение 2 копируется в переменную x, а значение 3 копируется в переменную y. Используя переменную temp, значения меняются местами. В основной программе при печати p и q значения не меняются местами. Значение p по-прежнему равно 2, а значение q равно 3. Даже в методе подкачки значения меняются местами, но это не отражается в основной программе.

В отличие от передачи значений, как описано выше, параметры можно передавать по ссылке. Ссылочная переменная - это ссылка на ячейку памяти. Новое место в памяти не создается. Изменения в методе отражены в основной программе. В C ссылочные параметры указываются с использованием ключевого слова ref. См. приведенную ниже программу.

namespace application1{

Расчет общедоступного класса{

public void swap(ref int x, ref int y){

int temp;

temp=x;

х=у;

y=темп;

}

public static void main(String args){

Расчет cal=new Calculation();

int p=2;

int q=3;

cal.swap(ref p, ref q);

Console. WriteLine(p);

Console. WriteLine(q);

Console. ReadLine();

}

}

}

Согласно приведенной выше программе, класс Calculation имеет метод swap. В основной программе создается объект типа Расчет. Это две переменные, такие как p и q. Переменная p имеет значение 2, а переменная q имеет значение 3. Вместо передачи значений в метод передаются ссылки на ячейки памяти p и q. На эти ссылочные переменные ссылаются с помощью ref. В методе подкачки вместо копирования значений в новое место изменения вносятся в фактические параметры. При печати значений p и q основной программы она выдает замененные значения. Теперь значение p равно 3, а значение q равно 2.

В чем сходство между out и ref в C?

Оба являются ключевыми словами, используемыми для обозначения параметров метода

В чем разница между out и ref в C?

out vs ref в C

out - это ключевое слово в C, которое используется для ссылки на выходной параметр. Он используется для передачи результатов от вызываемого метода к вызову метода. Ref - это ключевое слово в C, которое используется для ссылки на ссылочный параметр. Он используется для передачи данных из вызывающего метода в вызываемый метод и для возврата данных из вызываемого метода в вызывающий метод.
Функциональность
При использовании ключевого слова out данные могут быть переданы из вызывающего метода в вызываемый метод. Но эти данные сбрасываются. Он используется для передачи результата вызывающему методу из вызываемого метода. При использовании ключевого слова ref данные передаются из вызывающего метода в вызываемый метод, а обработанные данные передаются обратно в вызывающий метод.
Передача данных
При использовании ключевого слова out данные передаются одним способом – вызываемым методом вызывающему методу. При использовании ключевого слова ref данные передаются двумя способами: от вызывающего метода к вызываемому методу и от вызываемого метода к вызывающему методу.

Резюме - out vs ref в C

При вызове метода может потребоваться передать значения в метод и получить результаты из метода. C имеет разные параметры для достижения этого. Параметры значения используются для передачи параметров в метод по значению. Ссылочные параметры используются для передачи параметров в метод по ссылке. Выходные параметры используются для передачи результата обратно из метода. В C ключевое слово out используется для выходных параметров, а ключевое слово ref используется для ссылки на параметры. Разница между out и ref в C заключается в том, что out - это ключевое слово, используемое для ссылки на выходной параметр, который используется для передачи результатов от вызываемого метода в вызывающий метод, а ref - это ключевое слово для ссылки на ссылочный параметр, который используется для передачи данных из вызывающий метод вызываемому методу и получать данные от вызываемого метода к вызывающему методу.

Загрузить PDF-файл out vs ref в C

Вы можете загрузить PDF-версию этой статьи и использовать ее в автономном режиме в соответствии с примечанием к цитированию. Загрузите PDF-версию здесь: Разница между Out и Ref в C

Рекомендуемые: