2014-02-21 2 views
0

저는 C#을 처음 접했고 학교에서 배운 것은 정말 가난합니다. 지난 주에 나는 같은 문제에 봉착했다. 나는 무엇을 몰랐 는가? C#의 이름 유형 다음을 의미합니다. 나는 대답을 찾을 수 있었고, 다시 "??" 표현의 의미, 나는 정말로 좌절감을 느낍니다.C *의 형식 뒤에 * 기호는 무엇입니까?

이 경우 스타 (*)는 들어오는 매개 변수에 대해 무엇을 말하고 있습니까? (나는 안전하지 않은 코드 블록에있다.)

C#에서이 기사에 대한 빠른 가이드를 주신다면 정말 감사 할 것입니다.

답변

1

*after a type determines a pointer. 당신도 이것을 사용할 필요가 없습니다 수있는 좋은 기회가에 읽어 보시기 바랍니다.


?after a type says that it is nullable. 아래를 참조

int? a = null; 
int b = null; //Compile error 

??is the null coalescing operator합니다. 기본적으로 왼쪽면이 null 인 경우 오른쪽 값을 제공합니다.

object a = null; 
object b = new Object(); 
object c = a ?? b; 
// 'c' is 'b' because 'a' was null. 

나는 그 질문에 대한 답변 바랍니다. 나는 당신이 이것들 전부에 대해 묻고 있는지 또는 * 만 묻고 있는지 알 수 없었다.

1

'*'는 포인터임을 나타내며 C에서 포인터를 많이 사용한다는 것을 의미합니다. C# 코드에서는이 포인터가 거의 발생하지 않습니다. 당신이 포인터 타입을 선언 할 수있는 방법