C#의 변수는 2가지로 분류할 수 있다
using System;
namespace ConsoleApplication1
{
class CSVar
{
int globalVar; // Field
const int MAX = 1024;
public void Method1()
{
int localVar; // Local Variable
localVar = 100;
Console.WriteLine(globalVar); // 기본값 0이 할당
Console.WriteLine(localVar);
}
}
class Program
{
static void Main(string[] args)
{
CSVar obj = new CSVar();
obj.Method1();
}
}
}
C#에서 상수는 키워드 const를 사용하여 정의한다
상수는 처음에 할당한 값을 중간에 변경할 수 없으며 컴파일 시 상수값이 결정된다
const 대신 readonly 키워드를 사용하여 읽기전용 필드를 만들 수 있다
선언 시 값을 할당해줘야 하는 const와는 다르게, 먼저 선언 후 생성자 등에서 값을 할당할 수 있으며 런타임 시 값이 결정된다
using System;
namespace ConsoleApplication1
{
class CSVar
{
const int MAX_VALUE = 1024; // 상수
readonly int Max; // readonly
public CSVar()
{
Max = 1;
}
}
}