1
2
3
4
5
6
7
8
9
10
class MYClass
{
    int testNum = 0;
 
    public int TestNum
    {
        get { return testNum;}
        set { testNum = value; }
    }
}
cs


이렇게 정의해두면


1
2
3
MyClass instance = new MyClass();
instance.TestNum = 10// set
int num = instance.TestNum; // get
cs


이렇게 사용이 가능하다.



setter에 인자가 없는 것처럼 보이지만, value가 인자를 뜻하는 예약어이다.


굉장히 편리하고 예쁘다.

'C#' 카테고리의 다른 글

C# 클래스 - Object 클래스  (0) 2016.06.08
C# 클래스 - 상속  (0) 2016.06.08
C# 클래스 - 형변환  (0) 2016.06.08
C# 클래스 - 생성자  (0) 2016.06.07
C# 배열  (0) 2016.06.07
Posted by RPG만들기XP
,

C# 클래스 - 생성자

C# 2016. 6. 7. 21:34
1
2
3
4
5
6
7
8
9
10
11
12
13
class MyClass
{
    string test_string;
 
    public MyClass()
    {
        test_string = "This is test string";
    }
    ~MyClass()
    {
        // 어쩌고저쩌고
    }
}
cs


C#에서의 생성자는 C++에서의 생성자와 똑같이 생각하면 된다.


소멸자 또한 제공하는데, C#에서는 객체 파괴를 GC가 담당하므로 파괴 시기를 예측할 수 없어 잘 사용하지 않는다.

Native 프로그램과 묶여 돌아갈 일이 있을 때에 사용하는 경우가 있다.

'C#' 카테고리의 다른 글

C# 클래스 - Object 클래스  (0) 2016.06.08
C# 클래스 - 상속  (0) 2016.06.08
C# 클래스 - 형변환  (0) 2016.06.08
C# 클래스 - 프로퍼티(property)  (0) 2016.06.07
C# 배열  (0) 2016.06.07
Posted by RPG만들기XP
,

C# 배열

C# 2016. 6. 7. 21:26
1
2
3
int [,] arr1 = new int[10,5];
 
short [,,] arr2 = new short[8,3,10];
cs

C#에서 배열은 위와 같이 선언한다.




C#에는 가변 배열(jagged array)이 있다.

문법은 다음과 같다.


1
2
3
4
int [][] arr = new int [3][];
arr[0= new int [10];
arr[1= new int [9];
arr[2= new int [5];
cs

"배열의 배열"로 생각할 수 있다.

다차원 배열에 비해 메모리 낭비를 줄일 수 있다.


하지만 꼭 필요한 경우가 있을지는 의문.



C#의 배열은 모두 System.Array를 상속받는다.

'C#' 카테고리의 다른 글

C# 클래스 - Object 클래스  (0) 2016.06.08
C# 클래스 - 상속  (0) 2016.06.08
C# 클래스 - 형변환  (0) 2016.06.08
C# 클래스 - 프로퍼티(property)  (0) 2016.06.07
C# 클래스 - 생성자  (0) 2016.06.07
Posted by RPG만들기XP
,