2016-08-12 2 views
1

나는 다음과 같은 사용개인 설정 도구로 개체를 초기화하는 방법은 무엇입니까?

static public string myString { get; private set; } 

가 어떻게 같은 시간에 값을 설정할 수 있습니다? 문제는 내 클래스 정적, 그래서 오른쪽에 선언, 나는 그것이 가치가 있는지 확인해야합니다.

일반적으로 정적이 아닌 클래스와 함께 사용하므로 클래스 생성자에서 값을 설정합니다.

+1

당신은 정적 생성자 ... –

답변

5

이 유효한 경우에만 C# 6.0 인치 C# 6.0은이 구문 추가 : 당신은 당신의 프로그램의 일부 나중에 myString을 설정하는 계획이 아니라면

static public string myString { get; private set; } = "Hello"; 

가 만드는 생각을 재산 읽기 전용 (즉, C# 6.0의 또 다른 새로운 기능입니다) :

static public string myString { get; } = "Hello"; 
+0

많이 고마워! 나는 내 버전에서 그렇게 할 수 없다는 것을 알기 때문에 Sergey.quixoticaxis를 사용합니다. 이바노프 대답. 너도 정말 도움이된다. 내가 할 수 있으면 둘 다 대답으로 표시 할 수 있습니다. –

+1

@MaximeJoyal 걱정 마세요. 대답은 정확히 같습니다. C# 6에서는 정적 생성자 내부에서 변수를 초기화하는 구문 바로 가기를 추가합니다. –

4

정적 생성자 (MSDN)를 사용하여 속성을 초기화하십시오.

2

또 다른 옵션 :

static public string myString { get; private set; } = "default value"; 
+0

에서 설정할 수 있지만 C# 6에서는 가능하지만 올바른 것입니다. 아마도 당신은 대답에서 똑같이 언급해야 할 것입니다. – Rahul

+0

@ Rahul : 예, 알고 있습니다. 나는 그것이 어떤 버전인지 기억하지 못했고 dasblinkenlight는 그 시간에 좀 더 완벽한 답변을 추가 했으므로 검사를 거치지 않았다. 방금 대신 그의 대답을 upvoted :) – sstan

관련 문제