class Widget;
std::vector< std::shared_ptr<Widget> > container
class Criterium
{
public:
bool operator()(const Widget& left, const Widget& right)const;
};
次のような別の基準を定義せずに、基準に従ってコンテナを並べ替えるにはどうすればよいですか。
class CriteriumForPointers
{
public:
bool operator()(const std::shared_ptr<Widget>& left,
const std::shared_ptr<Widget>& right)const;
};