개발 C의 인덱서 란 무엇입니까? -techopedia에서 정의

C의 인덱서 란 무엇입니까? -techopedia에서 정의

차례:

Anonim

정의-인덱서는 무엇을 의미합니까?

C #의 맥락에서 인덱서는 객체 속성에 쉽게 액세스 할 수 있도록 배열과 같은 인덱싱 기능을 제공하는 데 사용되는 클래스 멤버입니다. 인덱서는 주로 배열이 유형 내에 캡슐화 될 때 사용됩니다.


인덱서의 간단한 구문은 클라이언트 응용 프로그램이 요소 그룹에 배열 개체 멤버 (유형, 클래스 또는 구조체)로 액세스하는 데 도움이됩니다. 인덱서는 경계 검사 로직을 삽입하는 간접적 인 방법을 제공합니다. 직관적 인 특성으로 인해 인덱서는 코드 가독성을 향상시킵니다.


인덱서는 종종 항목을 제거하지 않고 내용에 액세스 할 수 있도록 스택을 구현하는 데 사용됩니다. Java 인덱서 구현은 C #과 유사합니다. 일반적으로 인덱서는 사용 편의성과 유연성으로 인해 라이브러리 코드에서 사용될 수 있습니다.

Techopedia는 인덱서를 설명합니다

인덱서는 속성과 유사하지만 다른 매개 변수를 사용합니다. 속성은 이름으로 식별되고 인덱서는 서명 및 키워드 "this"의 사용으로 표시됩니다. 속성은 멤버를 통해 액세스 할 수 있지만 인덱서는 요소를 통해 액세스합니다. 속성과 달리 C # 컴파일러는 정적 인덱서 사용을 허용하지 않습니다.


인덱서는 클래스와 구조체 인스턴스가 배열처럼 인덱싱되고 대괄호 표기법을 사용하여 요소에 액세스하기 때문에 편리합니다. 인덱서는 스마트 어레이라고합니다. 접근자는 각각 값 가져 오기 및 설정을 가능하게하는 get 및 set 인덱서 구성 요소입니다. 조회에 필요한 멤버 유형을 기반으로 인덱서는 적절한 서명으로 선언됩니다. 키워드 "this"는 인덱서를 정의하는 데 사용되고 "Value"는 세트 접근자를 할당하는 데 사용됩니다.


인덱서 유형과 매개 변수는 인덱서 자체만큼 액세스 할 수 있어야합니다. 형식 인수의 수와 유형은 인덱서의 서명으로 알려져 있지만 유형 또는 인수 이름은 아닙니다. 반환 형식은 유효한 C # 형식이어야합니다. 인덱서에는 하나 이상의 매개 변수가 있어야합니다.


클래스 인덱서는 과부하되어 서명이 다를 수 있습니다. 인덱서는 변수로 간주되지 않으므로 "ref"또는 "out"매개 변수로 사용할 수 없습니다. 상호 언어는 선언에 지정되지 않은 경우 기본 이름 Item을 사용합니다. 인덱서로 구현 된 접근자는 여러 유형으로 오버로드 될 수 있습니다. 인덱서는 2 차원 배열에 액세스 할 때와 같이 둘 이상의 공식 매개 변수를 전달할 수 있습니다. 추상 인덱서는 기본 클래스에서 get / set 접근자를 선언하고 파생 클래스 코드를 추가하여 구현됩니다.


인덱서는 인터페이스에서도 사용되지만 클래스 선언은 다릅니다. 인터페이스 인덱서 접근자는 수정자를 사용하지 않으며 본문이 없습니다. 인덱서는 인터페이스에서 읽기 전용, 쓰기 전용 또는 읽기 / 쓰기인지를 나타내는 데에도 사용됩니다. 설계 지침에 따라 get 및 set 접근자를 사용할 때 인덱서에 필요한 오류 예외 문서를 제공 할뿐만 아니라 올바른 오류 처리 전략을 구현하는 것이 중요합니다. 악의적 인 설정 값을 피하려면 접근자를 필요한 수준으로 제한하는 것이 좋습니다. 이 정의는 C #의 맥락에서 작성되었습니다.

C의 인덱서 란 무엇입니까? -techopedia에서 정의