1. readonly 필드
읽기 전용 필드. const 와 차이점은 선언시 초기화하지 않아도 된다. 다만, 한번이라도 초기화되어 값을 갖고 있으면 변경 불가능한 것은 같다.
2. out 매개변수
반환형 매개변수. 초기화 되지 않은 매개변수를 메서드에 전달하기 위한 키워드. 이때 해당 값을 의미있게 사용하고자 하면 메서드 내부에서 초기화해줘야 한다.
public void TestMethod(out int num){
... // out int 형식의 매개변수를 받는 메서드
}
static void Main(){
int num;
TestMethod(out num); // 초기화되지 않은 매개변수 전달
}
3. ref 매개변수
참조 전달 방식. 기본형의 변수들은 메모리에 값을 저장하는 방식으로 저장됨. 따라서 매개변수로 메서드에게 넘긴 다음, 메서드에서 값을 바꿔도 기존 원본은 바뀌지 않는다.
그러나 ref 형식으로 값을 넘기면 메모리 주소를 가르키는 참조값 형태로 값이 넘어가기에 원본 내용이 바뀔수 있다.
static void Main(){
int num = 10;
TestMethod(ref num); // 참조 전달 방식으로 값 전달
}
public void TestMethod(ref int num){
num = 20; // 이때 원본값인 Main함수의 변수 num 값 역시 20으로 변함.
}
4. params 길이가 정해지지 않은 가변 길이 매개변수
함수에 매개변수가 얼마나 들어와야 할지 불확실할때 사용 가능하다. 자바의 ... 키워드와 같은 역할. 매개변수 타입이 여러개라면 하나만 가능하며, 마지막에 위치해야 한다.
함수명(params 타입[] 이름){}
형태로 선언한다.
'공부 > C#' 카테고리의 다른 글
(5) C# 기초 문법 - 연산자 오버로딩, foreach, 이터레이터, 가변배열 등 (0) | 2024.10.17 |
---|---|
(4) C# 기초 문법 - 프로퍼티(속성), 인덱서 (0) | 2024.10.16 |
(2) C# 기초 문법 - namespace, 클래스, 구조체, static, 접근 제한자 등 (1) | 2024.10.16 |
(2) C# 기초 문법 - 기본형, 변수, 상수, 문자 (1) | 2024.10.16 |
(1) C# 이란? (0) | 2024.10.16 |