โ in
in ํค์๋๋ ๋งค๊ฐ๋ณ์๋ฅผ ๋ฉ์๋์ ์ฝ๊ธฐ ์ ์ฉ ์ฐธ์กฐ๋ก ์ ๋ฌํ ๋ ์ฌ์ฉํ๋ค. ์ด๋ ๋งค๊ฐ๋ณ์์ ๊ฐ์ ๋ณต์ฌํ์ง ์๊ณ ๋ฉ๋ชจ๋ฆฌ ์ฃผ์๋ฅผ ์ฐธ์กฐํ๋๋ก ํ๋ฉด์, ๋ฉ์๋ ๋ด๋ถ์์ ๊ฐ์ ๋ณ๊ฒฝํ ์ ์์์ ๋ณด์ฅํ๋ค.
๋ฉ์๋ ์ ์์ ํธ์ถ ๋ชจ๋์์ in ํค์๋๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
static void PrintValue(in int number)
{
Console.WriteLine(number);
}
int value = 10;
PrintValue(in value);
โ out
out ํค์๋๋ ๋งค๊ฐ๋ณ์๋ฅผ ๋ฉ์๋์ ์ฐธ์กฐ๋ก ์ ๋ฌํ๋ฉด์, ๋ฉ์๋ ๋ด๋ถ์์ ๊ฐ์ ๋ฐ๋์ ์ค์ ํ๋๋ก ๋ณด์ฅํ๋ค.
๋ฉ์๋ ์ ์์ ํธ์ถ ๋ชจ๋์์ out ํค์๋๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
int result;
int.TryParse("1234", out result);
* ๋ฉ์๋ ๋ด๋ถ์์ out ๋งค๊ฐ๋ณ์์ ๊ฐ์ ๋ฐ๋์ ์ค์ ํด์ผ ํ๋ค.
โ ref
ref ํค์๋๋ ๋งค๊ฐ๋ณ์๋ฅผ ๋ฉ์๋์ ์ฐธ์กฐ๋ก ์ ๋ฌํ ๋ ์ฌ์ฉํ๋ค. ์ด ๋ฐฉ์์ ๋ฉ์๋ ํธ์ถ ์ ๋งค๊ฐ๋ณ์์ ๋ฉ๋ชจ๋ฆฌ ์์น๋ฅผ ์ฐธ์กฐํ์ฌ, ๋งค๊ฐ๋ณ์์ ๊ฐ์ ๋ฉ์๋ ๋ด๋ถ์์ ๋ณ๊ฒฝํ ์ ์๊ฒ ํ๋ค.
๋ฉ์๋ ์ ์์ ํธ์ถ ๋ชจ๋์์ ref ํค์๋๋ฅผ ์ฌ์ฉํด์ผ ํ๋ค.
static void UpdateValue(ref int number)
{
number += 10;
}
int value = 10;
UpdateValue(ref value);'๐ C#' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
| ๋ฆฌํ๋ ์ (Reflection) (0) | 2024.08.19 |
|---|---|
| const, readonly (0) | 2024.08.19 |
| IComparable, IComparer ์ธํฐํ์ด์ค (0) | 2024.08.19 |
| object ํ์ , ๋ฐ์ฑ, ์ธ๋ฐ์ฑ (0) | 2024.08.19 |
| ์ ๊ท ํํ์ (Regular Expression) (0) | 2024.08.14 |