2012-05-29 5 views
3

내가 속성이 같은 말해봐.가변 배열 입력 속성

public int[] MyProperty 
{ 
    get; 
    private set; 
} 

는이 값을 변경하는 호출 코드를 허용하지만, 다른 하나의 행의 배열을 변경하거나, 크기를 변경할 수있다 :이 용이과 같이, 세터를 숨김으로써 방지 할 수있다.

이 패턴은 다차원 배열에서 작동하지만 지그재그 배열에서는 작동하지 않습니다. 내가 가지고있는 경우 :

public int[][] MyProperty 
{ 
    get; 
    private set; 
} 

주 배열은 수정할 수 없지만 자식 배열은 수정할 수 있습니다. 자식 코드 배열을 읽기 전용으로 만들고 싶으면 호출 코드가 요소는 변경할 수 있지만 배열은 변경할 수 없으면 어떻게해야합니까?

가변 배열의 요소 만 수정 가능하게 만들 수 있습니까? 여기에는 3D 이상이 포함됩니다.

+0

http://msdn.microsoft.com/en-us/library/0fss9skc.aspx – SLaks

답변

3

ReadOnlyCollection<int[]>을 사용해야합니다.

+0

+1 매우 좋음, 코드 예제에서 코드를 사용하는 것이 약간 정교 할 수 있겠습니까 –

+0

차가워 요. 가변 배열로 문제를 해결할 수있는 방법이 있습니까? –

+0

@KendallFrey : 아니요, 없습니다. – SLaks