728x90
Call by Value | Call by Reference |
- 값에 의한 호출 - 함수에서 값에 영향을 주지 않는다 - 일반 함수 - void swap(int a, int b) |
- 주소에 의한 호출 - 함수에서 값에 영향을 준다 - ref 키워드를 가지는 함수 - void swap(ref int a, ref int b) |
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace _062_FuncSwap
{
class Program
{
static public void ValueSwap(int a, int b)
{
int temp = a;
a = b;
b = temp;
Console.WriteLine("ValueSwap");
Console.WriteLine("num1 : {0} num2 : {1}", a, b);
}
static public void RefSwap(ref int a, ref int b)
{
int temp = a;
a = b;
b = temp;
Console.WriteLine("RefSwap");
Console.WriteLine("num1 : {0} num2 : {1}", a, b);
}
static void Main(string[] args)
{
int num1 = 100;
int num2 = -100;
ValueSwap(num1, num2);
Console.WriteLine("num1 : {0} num2 : {1}", num1, num2);
RefSwap(ref num1, ref num2);
Console.WriteLine("num1 : {0} num2 : {1}", num1, num2);
Console.ReadKey();
}
}
}
728x90
'게임 프로그래밍 > C#' 카테고리의 다른 글
C# 클래스(접근 한정자, 생성자, 소멸자) (0) | 2021.12.15 |
---|---|
C# 메서드 오버로딩(Method Overloading) (0) | 2021.12.14 |
C# 숫자 달리기 (0) | 2021.12.13 |
[백준]C# 코딩 : 4344번(평균은 넘겠지) (0) | 2021.09.26 |
[백준]C# 코딩 : 8958번(OX퀴즈) (0) | 2021.09.15 |