2016-11-24 1 views
0

응용 프로그램에서 자동 속성이 지속되는 시간에 대한 정보를 찾을 수 없습니까?자동 속성은 얼마나 오래 지속됩니까?

내가 말하는 것은 응용 프로그램이 실행되는 전체 시간 동안 기본값을 유지한다는 것입니다. 즉, 나는 아래의 예제 코드처럼 시작시 자동 속성,

namespace MyApplication 
{ 
    /// <summary> 
    /// Interaction logic for MainWindow.xaml 
    /// </summary> 
    public partial class MainWindow 
    { 
     public MainWindow() 
     {    
      example = "SomeString"; 
      InitializeComponent(); 

     } 

    .....////other stuff 

     public static string example { get; set; } 
    } 
} 

가 실행중인 응용 프로그램의 전체에 그 값을 유지할 것인가를 초기화하면? 재 할당을 통해 값을 변경하거나 INotifyPropertyChanged을 통해 값을 변경할 수 있다는 사실 외에도 값이 손실되어 다시 할당해야하는 경우가 있습니까?

값을 잃어 버리면 원인은 무엇입니까?

참고 : automatic-properties에있는 모든 태그를 검토 했으므로 중복되는 경우 내 검색에서 아무 것도 찾을 수 없으므로 알려 주시기 바랍니다.

+1

왜 스스로 변경 될 것이라고 생각하십니까? 속성이 해당 객체의 구성원 인 경우 객체의 수명 동안 존재하게됩니다. – OldProgrammer

+0

아니요, 속성은 특별히 동작을 프로그래밍하지 않는 한 시간이 지남에 따라 값이 "손실"되지 않습니다. – Blorgbeard

+1

@OldProgrammer, 나는 그것이 그 자체로 바뀔 것이라고 제안했다고 생각하지 않는다. 나는 그것의 가치를 떨어 뜨릴 수 있는지 질문했다. 즉, VBA 전역 변수는 특정 상황에서 가치를 잃을 수 있지만 응용 프로그램의 전체 수명 동안 가치를 유지할 수있는 것으로 간주됩니다. – KyloRen

답변

1

정적 자동 등록 정보의 수명은 자동 등록 정보와 완전히 관련이 없으며 대신 static 한정자로 결정됩니다. documentation 의해 명시된 바와

:

정적 변수가 포함 된 유형의 정적 생성자의 실행 전에 존재로 제공되며 연관된 애플리케이션 도메인 존재 중단 할 때 존재 중단.

정적 자동 등록 정보의 값은 다른 변수와 동일한 방식으로 관리됩니다.

+0

내가 잘못된 위치에서 찾고 있으므로 해당 설명서를 찾을 수 없습니다. 도움 UV. – KyloRen

관련 문제