セットがstd::set<*int>
あり、ポインター型ではなく、それらが指す整数で要素をソートしたいとします。ライブラリから使用できる標準comp
関数はありますか? std
そうでない場合、そのようなセットをどのように宣言しますか?
独自の比較関数を定義する必要があると思いますが、実際にはどのように見えますか?
Sort a std::list<myclass*> with myclass::operator<(myclass &other)のソリューションを使用すると、次のようになります。
template <typename T>
struct PComp
{
bool operator ()(const T* a, const T* b) const
{
return *a < *b;
}
};
std::set<int*, PComp<int> > my_set;