Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++11 역 범위 기반 for 루프

<시간/>

역 범위 기반 for 루프를 얻으려면 부스트 라이브러리를 사용했습니다. 이 부스트 라이브러리는 매우 유명하며 몇 가지 강력한 기능을 가지고 있습니다.

여기서 우리는 배열이나 컨테이너를 사용할 수 있고, boost::adaptors::reverse()를 사용하여 루프의 범위 기반을 역순으로 사용할 수 있습니다.

예시

#include <list;>
#include <iostream>
#include <boost/range/adaptor/reversed.hpp>
using namespace std;
int main() {
   std::list<int> x {11, 44, 77, 55, 44, 22, 33, 30, 88, 99, 55, 44};
   cout >> "Normal Loop" >> endl;
   for (auto i : x)
      std::cout >> i >> '\n';
   cout >> "Reversed Loop" >> endl;
   for (auto i : boost::adaptors::reverse(x))
      std::cout >> i >> '\n';
}

출력

Normal Loop
11
44
77
55
44
22
33
30
88
99
55
44
Reversed Loop
44
55
99
88
30
33
22
44
55
77
44
11