28 Ekim 2016 Cuma

range algorithm

Giriş
Topluca kullanmak için şu satırı dahil ederiz.
#include <boost/range/algorithm.hpp>
max_element metodu
Şöyle yaparız.
int arr[] = {1, 2, 3, 4, 5, 6, 7};

auto str = std::make_pair(&arr[0], &arr[8]);
std::cout << *boost::range::max_element (str)
min_element metodu
Şöyle yaparız.
int arr[] = {1, 2, 3, 4, 5, 6, 7};

auto str = std::make_pair(&arr[0], &arr[8]);
std::cout << *boost::range::min_element (str)
remove_erase_if metodu
Şu satırı dahil ederiz.
#include <boost/range/algorithm_ext/erase.hpp>
Şöyle yaparız.
std::vector<Item> items;...

boost::range::remove_erase_if (items, [&](const Item& item)
{
  // do whatever else you want to item
  // return true to erase the item, or
  return false; // to keep it
});
STL'i kullanmaktan daha kolaydır.
items.erase(std::remove_if(items.begin(), items.end(),[&](const Item& i) {
  return false; // return true to erase the item
}), items.end());

Hiç yorum yok:

Yorum Gönder