17 Aralık 2011, CUMARTESİ
C 11 ters aralığı tabanlı için döngü
-Döngü aralığı tabanlı ters bir kabın içinde yineleme böylece kullanımına yönünü ters olacağı kapsayıcı bir adaptör var mı?
Kullanımına açık olan bu dönüştürmek istiyorum:
for (auto i = c.begin(); i != c.end(); i) { ...
bu içine:
for (auto i = c.rbegin(); i != c.rend(); i) { ...
Bu dönüştürmek istiyorum
for (auto& i: c) { ...
bunun için:
for (auto& i: std::magic_reverse_adapter(c)) { ...
Böyle bir şey var ya da ben kendim yazmak zorunda mıyım?
CEVAP
17 Aralık 2011, CUMARTESİ
Aslında Boost böyle bir adaptör var mı: boost::adaptors::reverse
.
#include <list>
#include <iostream>
#include <boost/range/adaptor/reversed.hpp>
int main()
{
std::list<int> x { 2, 3, 5, 7, 11, 13, 17, 19 };
for (auto i : boost::adaptors::reverse(x))
std::cout << i << '\n';
for (auto i : x)
std::cout << i << '\n';
}
Bunu PaylaÅŸ:
Bir şekilde döngü için en N eleman ara...
Bir ters sırada Java'da her döngü için...
Form tabanlı kimlik doğrulaması için k...
Nasıl her döngü için Java çalışır?...
döngü numaralama üzerinde yineleme içi...