以下の例はinitializer_list経由でリストの 配列を取り,リストの値はラムダ式のpredを使いソート,そして指定された関数で出力する例.
#include <iostream>
#include <string>
#include <vector>
#include <algorithm>
using namespace std;
class Tako {
private:
 vector<signed> v;
public:
 Tako(initializer_list<signed> listVal);
 virtual ~Tako() {}
 void dump(void (f)(const signed));
 void sort();
};
Tako::Tako(initializer_list<signed> listVal) {
 for (auto a : listVal) {
  v.push_back(a);
 }
}
void Tako::dump(void (f)(const signed)) {
 for (auto x : v) {
  f(x);
 }
}
void Tako::sort() {
 if (v.size() >= 2) {
  std::sort(v.begin(), v.end(), [](signed x, signed y)-> signed { return x > y; });
 }
}
void dump_to_stdout(const signed v) {
 cout << v << endl;
}
int main() {
 Tako t = { 32, 27, 30, 50, 64, 10 };
 void(*myfunc)(signed) = dump_to_stdout;
 t.sort();
 t.dump(myfunc);
}
