C 프로그래밍 영역에서 흥미로운 질문이 제기됩니다. const 클래스 유형에 대한 rvalue 참조가 어떤 용도로 사용됩니까? 처음에는 중복된다고 가정할 수도 있지만 자세히 살펴보면 가끔 유용하다는 사실이 드러납니다.
C 0x 언어 표준 초안은 해당 응용 프로그램의 예를 제공합니다. 두 가지 함수 템플릿인 ref와 cref는 다음과 같이 정의됩니다.
template <class T> void ref(const T&&) = delete; template <class T> void cref(const T&&) = delete;
이러한 오버로드는 다른 ref(T&) 및 cref(const T&) 함수가 rvalue로 호출되는 것을 방지하는 중요한 목적을 제공합니다. 이는 const에 대한 rvalue 참조가 정의되지 않은 경우에 가능합니다.
업데이트:
공식 C 표준(N3290)을 자세히 살펴보면 동일한 함수 템플릿이 섹션 20.8 [function.objects]/p2에 나와 있습니다. 또한 최신 C 11 초안(N3485)에도 이러한 템플릿이 동일한 위치에 포함되어 있습니다.
위 내용은 Const Rvalue 참조는 C에서 언제 유용합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!