2011-01-06 2 views
-1

g가 G를 대체하는 불변 세트를 사용해야하는 과제를하려고합니다.
미리 감사드립니다.어떻게하면 C#에서 불변의 코드를 작성합니까?

이것은 내가 가지고있는 코드입니다.

class interface IMMUTABLE_SET[G]  
count:INTEGER 
has(g:G):BOOLEAN 
choice:G 
clones(s:IMMUTABLE_SET{[G]):IMMUTABLE_SET[G] 
is_equal(other:IMMUTABLE_SET[G]):BOOLEAN 
plus(g:G):IMMUTABLE_SET[G] 
minus (g:G):IMMUTABLE_SET[G] 
the end--- class IMMUTABLE_SET[G] 

그 모두입니다. 미리 감사드립니다. 나는 코드에서 계약을 사용하기로되어있다.

+3

소유하고있는 코드는 무엇이며 속성은 어떤 것입니까? –

+2

어쩌면 나는 바보 같지만 귀하의 질문이 무엇인지 이해하지 못합니다. –

+7

에릭 리 퍼트 (Eric Lippert)의 불변성에 관한 블로그 시리즈를 읽기 시작하는 것이 좋습니다 - 여기가 첫 번째 것입니다 : http://blogs.msdn.com/b/ericlippert/archive/2007/11/13/immutability-in-c-part -one-kinds-of-immutability.aspx – Oded

답변

1

나는 당신이 달성하려고하는 것이 확실하지 않지만 당신이 당신의 타입에 불변의 속성을 갖고 싶어한다고 생각합니다. 다음과 같은 것 :

public class Person 
{ 

    private readonly int _age; 
    public Person (int age) 
    { 
     _age = age; 
    } 

    public int Age 
    { 
     get 
     { 
      return _age; 
     } 
    } 
} 
+0

죄송합니다, 미안 해요, 계약을 사용하여 미안 해요 내가 그 – Cedric

+0

이 가지고 rwhat 언급 깜빡 잊고 – Cedric

+0

클래스 인터페이스 IMMUTABLE_SET [G] – Cedric

관련 문제