using System;
namespace Rookiss_CSharp
{
class Program
{
// 메소드(C++에서는 함수, 게임업계에서도 함수라고 함)
// 한정자 반환형식 이름(매개변수목록)
static void AddOne(int number) // 매개변수 : 복사
{
number = number + 1;
}
static void AddOneRef(ref int number) // 매개변수 : 참조
{
number = number + 1;
}
static int AddOne2(int number) // 값 참조없이 반환(이 방법이 제일 베스트)
{
return number + 1;
}
//📘 out 키워드란?
// C#에서 out 매개변수는 함수가 여러 개의 값을 반환할 때 사용됩니다.
// 함수 안에서 반드시 값을 할당해야 하며, 호출하는 쪽에서는 초기화하지 않고 넘겨도 됩니다.
// out은 out 값 주소 참조해서 결과할당
static void Divide(int a, int b, out int result1, out int result2)
{
result1 = a / b;
result2 = a % b;
}
static float Multiply(float a, float b) // 함수 오버로딩(매개변수 타입, 개수등 달라야함)
{
return a * b;
}
static int Multiply(int a, int b = 10, int c = 20) // 매개변수 디폴트값 지정가능
{
return a * b * c;
}
static void Main(string[] args)
{
int number = 0;
Program.AddOne(number); // 값 복사해서 넘김
Console.WriteLine(number); // 0
Program.AddOneRef(ref number); // 참조로 넘김
Console.WriteLine(number); // 1
number = Program.AddOne2(number); // 값 참조없이 return으로 1더함
Console.WriteLine(number); // 2
int num1 = 10;
int num2 = 3;
int result1;
int result2;
Program.Divide(10, 3, out result1, out result2); // 값을 여러개 반환해야 할 경우 유용
// 아래 키워드 둘다 Call By Reference
// ref : 함수에 값 전달 & 수정
// out : 함수가 여러 개의 값을 반환하도록 할
// C++은 엄격히 순서를 다 지켜야 하지만, C#은 디폴트 매개변수 원하는 부분만 입력가능
int result3 = Multiply(20, c:100);
}
}
}
정리본
출처: https://www.inflearn.com/course/%EC%9C%A0%EB%8B%88%ED%8B%B0-mmorpg-%EA%B0%9C%EB%B0%9C-part1
[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] Part1: C# 기초 프로그래밍 입문| Rookiss - 인프런 강
현재 평점 4.9점 수강생 6,977명인 강의를 만나보세요. 기초 프로그래밍 지식이 없는 사람들을 위한 C# 프로그래밍 기초 강의입니다. 문법 암기 위주의 수업이 아니라, 최대한 필요한 부분만을 요
www.inflearn.com
23 ~ 28강 오버로딩까지
'C# > 기본 문법' 카테고리의 다른 글
| C# 메모리 영역 (0) | 2025.11.01 |
|---|---|
| C# 객체 지향 시작 및 복사와 값 참조 (0) | 2025.11.01 |
| C# TextRPG (0) | 2025.11.01 |
| C# 간단한 연습문제 (0) | 2025.10.27 |
| C# 기초 문법 정리 — 변수, 진법, 형변환, 상수, 열거형, if문, switch (0) | 2025.10.26 |