C#/개념공부

C# 상수(const)

푸코잇 2024. 1. 2. 19:08

상수란?

이전 포스팅에서 배운 변수는 런타임 시간에 값을 변경할 수 있었다.

상수는 해당 값이 컴파일 시간에 설정되어 런타임 시간에 값을 변경할 수 없다.

C#에서는 메서드, 속성, 이벤트에는 상수(const)를 지원하지 않는다.

PI와 같이 이미 정의된 값이 절대로 변하지 않는 경우에 사용하면 좋다.

 

상수 정의 방법

const double PI = 3.14159;

 

C#에서 상수를 정의하는 방법은 const 키워드를 변수 선언에 접두어로 붙이면 된다.

 

상수초기화
상수 초기화 에러

 

상수는 선언과 동시에 초기화를 해야 한다.

선언과 동시에 초기화를 하지 않으면 CS0145 에러가 발생한다.

 

상수값변경에러
상수 값 변경 에러

 

상수는 값을 변경할 수 없기 때문에 변경 시 CS0131 에러가 발생한다.

 

상수 사용 방법

  • 로컬 상수
static void Main(string[] args)
{
    const double PI = 3.14159;
    double radius = 2.5;
    double s = PI * radius * radius;
}


메서드와 같이 로컬 안에서 상수를 정의한 경우 상수명으로 바로 사용하면 된다.

 

  • 상수 필드
static class Constants
{
    public const double PI = 3.14159;
}

class Program
{

    static void Main(string[] args)
    {
        double radius = 2.5;
        double s = Constants.PI * radius * radius;
    }
}

 

클래스 내에 정의된 상수 필드의 경우 다른 클래스에서 사용하기 위해 클래스 이름 한정자를 통해 접근한다.

'C# > 개념공부' 카테고리의 다른 글

C# Nullable 값 형식이란?  (0) 2024.01.07
C# var 키워드란?  (0) 2024.01.06
C# enum 열거형  (1) 2024.01.03
C# 변수  (0) 2023.12.21
C# 자료형 크기 및 범위  (0) 2023.12.19