C++ の概念 (今後の機能) の代わりとして何を使用しますか?
C++ の概念について聞いたことがあるかもしれません。テンプレートで型の要件を指定できるようにする機能です。
私は今、これを行う方法を探しています。私が見つけた最良の方法は、次のように static_assert と一緒に述語を使用する Stroustrup の本にあります。
template<typename Iter, typename Val>
Iter find(Iter b, Iter e, Val x)
{
static_assert(Input_iterator<Iter>(),"find(): Iter is not a Forward iterator");
// Rest of code...
}
他の方法を使用している場合、またはこの方法に問題がある場合はお知らせください。