나는

2016-07-28 2 views
-1
비주얼 스튜디오와 C#에서 윈폼을 사용하고 2015

나는

이 내가 할 Form1의로드 이벤트에 그럼 내 수업

public class advmessage 
{ 
    public string[] message; 
} 

입니다

내 클래스 중 하나의 속성에 null 참조를 얻을 수 이

이 할당에 대해 null 참조에 대한 예외를 throw하고 개체 참조가 개체 인스턴스로 설정되지 않았다고합니다.

그래서 배열이 될 필요가없는 클래스가 있으면 모든 것이 작동하지만 배열을 사용하는 클래스에서는 예외가있는 곳입니다.

또한 get 또는 return 클래스가 없기 때문에 문제가 발생할 수 있지만 {get; 세트; } 거기에는 여전히 문제가있었습니다. Null 문자열을 참조하는 경우 null 참조를 이해할 수 있지만 사용자에게 텍스트 상자에 표시 될 메시지 속성을 설정하려고합니다.

도움을 주시면 감사하겠습니다.

+0

디버거에서 코드를 밟았습니까? 대부분 'newadvmessage' 배열이 초기화되지 않았습니다. – Tim

+0

'get'과'set' (즉, 프로퍼티 대 필드, 지금 당신이 가지고있는 것은 필드입니다)은 에러와 아무 관련이 없습니다. 모범 사례 관점에서는 필드가 아닌 속성을 사용해야합니다. 입력란은 수업에 비공개 여야합니다. – Tim

답변

0
public class advmessage 
{ 
    public advmessage(size) 
    { 
     message = new string[size];//or whatever size you want. 
    } 
    public string[] message; 
} 

advmessage newadvmessage = new advmessage(5); 
newadvmessage.message[1]= "Hello"; 
+0

좋아, 그렇게했을 때 괄호는 newadvmessage 바로 뒤에 있고 .message 속성 앞에 있어야했다. – Larryrl