질문: C 표준 템플릿 라이브러리의 std::sort()를 어떻게 사용할 수 있나요? 배열을 오름차순으로 정렬하려면?
<code class="cpp">int v[2000];</code>
답: C 11에서는 두 가지 편리한 기능을 활용할 수 있습니다.
<code class="cpp">std::sort(std::begin(v), std::end(v));</code>
추가 질문 : C에는 배열의 시작 위치와 끝 위치를 결정하는 방법이 있나요?
답변: 예, C 11에서 std::begin 및 std::end는 다음과 같습니다. 배열에 대해 오버로드됩니다.
<code class="cpp">std::sort(std::begin(v), std::end(v));</code>
이전 버전의 C를 사용하는 경우 자신만의 시작 및 끝 버전을 만들 수 있습니다.
비상수:
<code class="cpp">template<class Cont> typename Cont::iterator begin(Cont& c){ return c.begin(); } template<class Cont> typename Cont::iterator end(Cont& c){ return c.end(); }</code>
Const:
<code class="cpp">template<class Cont> typename Cont::const_iterator begin(Cont const& c){ return c.begin(); } template<class Cont> typename Cont::const_iterator end(Cont const& c){ return c.end(); }</code>
C 스타일 배열에 대한 오버로드:
<code class="cpp">template<class T, std::size_t N> T* begin(T (&arr)[N]){ return &arr[0]; } template<class T, std::size_t N> T* end(T (&arr)[N]){ return arr + N; }</code>
위 내용은 C에서 배열을 주문하기 위해 std::sort를 사용하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!