소개
API를 설계할 때 개발자는 포인터 사용 중에서 선택해야 합니다. 또는 전달 인수 및 반환 값에 대한 참조입니다. 두 메커니즘 모두 개체의 데이터에 대한 액세스를 허용하지만 각각이 적절한 시기에 영향을 미치는 고유한 특성을 나타냅니다.
참조를 사용해야 하는 경우
참조는 다음과 같은 상황에서 선호됩니다.
포인터 사용 시기
포인터는 다음과 같은 경우에 필요합니다.
예
주어진 코드 조각에서 인수 'n'을 나타내는 포인터를 사용하면 명확성을 얻을 수 있습니다. 이는 잠재적으로 혼란스러울 수 있는 참조 버전과 달리 함수가 인수를 수정한다는 것을 명시적으로 나타냅니다.
void add_one(int& n) { n += 1; } // not clear that 'a' may be modified void add_one(int * const n) { *n += 1; } // 'n' is clearly passed destructively
성능 고려 사항
포인터와 참조는 다음에서 유사하게 수행됩니다. 대부분의 경우. 그러나 특정 상황에서는 포인터 역참조가 참조 액세스에 비해 약간의 성능 오버헤드를 초래할 수 있습니다.
권장사항
결국 포인터와 참조 사이의 결정은 특정 상황에 따라 달라집니다. API의 요구 사항. 일반 지침을 따르십시오. 가능하면 참조를 사용하고 필요한 경우 포인터로 전환하십시오. 디자이너는 절충점을 신중하게 고려하여 명확하고 효율적인 API를 만들 수 있습니다.
위 내용은 API 디자인의 포인터와 참조: 언제 무엇을 선택해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!