반응형
Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- 플러그인
- 마크여성서버
- Vue.js
- app-release
- CrashReports
- Google Analytics api
- 마인크래프트모딩
- 앱 어플리케이션
- 공용창고
- 구글 애널리틱스 api
- 마인크래프트
- 여성서버
- 러시안룰렛게임
- 마인크래프트스크립트
- 청년
- 면접을위한CS전공지식노트
- 1.14.4
- 자동트윗봇
- 마인크래프트서버
- 닉네임변환
- NativeScript
- TickingENtities
- 스크립트
- 마크서버
- 마인크래프트서버설치
- 마크모딩
- GoogleCloudPlatfor
- 마크에러
- 마크플러그인
- 사회초년생
Archives
- Today
- Total
일상일지
[C# 공부] 10. 함수 본문
반응형
- 메소드를 선언할 때 매개변수를 선언과 동시에 초기화 해 놓으면, 메소드를 호출할 때 매개변수를 지정하지 않아도 기본값으로 자동 설정된다. >> 기본 매개변수, 선택적 인수
using System;
class Quotes
{
static void Main()
{
Log("디버그");
Log("에러", 4);
}
static void Log(String message, byte level = 1) //매개변수를 1로 초기화
{
Console.WriteLine($"{message},{level}");
}
}
- 명명된 매개변수 : 함수를 호출할 때 매개변수 이름을 직접 지정 가능하다.
using System;
class Quotes
{
static void Main()
{
Sum(10, 20);
Sum(first: 10, second: 20);
Sum(second: 20, first: 10);
}
static void Sum(int first, int second)
{
Console.WriteLine($"{first},{second}");
}
}
- 함수 오버로드 : 매개변수를 달리해서 이름이 동일한 함수 여러 개를 정의할 수 있다. '다중 정의'라고도 한다.
using System;
class Quotes
{
static void Main()
{
GetNumber(1234);
GetNumber(1234L);
}
static void GetNumber(int number)
{
Console.WriteLine($"Int32 : {number}");
}
static void GetNumber(long number)
{
Console.WriteLine($"Int64 : {number}");
}
}
- 재귀함수 : 함수에서 함수 자신을 호출하는 것
using System;
class RecursionDemo
{
static void Main()
{
Console.WriteLine(4 * 3 * 2 * 1);
Console.WriteLine(FactorialFor(4));
Console.WriteLine(Factorial(4));
Console.WriteLine(Fact(4));
}
static int Fact(int n)
{
return (n > 1) ? n * Fact(n - 1) : 1;
}
static int Factorial(int n)
{
if(n==0 || n == 1)
{
return 1;
}
return n * Factorial(n - 1);
}
static int FactorialFor(int n)
{
int result = 1;
for (int i=1;i<=n; i++)
{
result *= i;
}
return result;
}
}
- 전역변수(필드) : 클래스와 같은 레벨에서 선언된 변수. _ 또는 m_ 접두사를 붙이는 경향이 있음.
- 지역변수 : 함수 레벨에서 선언된 변수
using System;
class RecursionDemo
{
static String message = "전역 변수";
static void Main()
{
ShowMessage();
Console.WriteLine(message);
}
static void ShowMessage()
{
string message = "지역 변수";
Console.WriteLine(message);
}
}
- 화살표 함수
using System;
class RecursionDemo
{
static void Main()
{
Hi();
Multiply(3, 5);
}
static void Hi() => Console.WriteLine("안녕하세요");
static void Multiply(int a, int b) => Console.WriteLine(a * b);
}
- 로컬 함수 : 함수 내에서만 사용하는 또 다른 함수를 만드는 것
using System;
class RecursionDemo
{
static void Main()
{
void Display(String text)
{
Console.WriteLine(text);
}
Display("로컬 함수");
}
}
반응형
'개발 > C# 공부' 카테고리의 다른 글
[C# 공부] 9. 배열, 함수 (0) | 2020.11.02 |
---|---|
[C# 공부] 8. 반복문 (0) | 2020.10.25 |
[C# 공부] 7. if 문 (0) | 2020.10.10 |
[C# 공부] 6. 제어문 (0) | 2020.09.27 |
[C# 공부] 5. 연산자 (0) | 2020.09.19 |
Comments