次のようなクラスがあるとしましょう:
Class Items{
private:
float price;
string name;
float qunatity;
public:
getname(string nam){name=nam;}}
等...
そして、私はこのクラスアイテムで構成されるベクトルを持っています。ユーザーがアイテムを名前でソートしたい場合のように、ユーザー入力に従ってベクトルをソートするにはどうすればよいでしょうか。名前などでソートします.
編集::わかりましたので、クラスアイテムがあり、クラスインベントリもあります:
Class Inventory{
print();
getdata();
sort();
static bool SORT_BY_NAME(const Item& i, const Item &j)}
それから私は Sang Geo が比較のために書いた関数を持っています
static bool Inventory::SORT_BY_NAME(const Item & i, const Item & j) {
return i.name.compare(j.name) < 0;
}
そして、さまざまなブールソート関数を使用するソート関数もあります
void Inventory::sorting(){
int x;
cout<<"How do you want to sort it: 1.name 2.ID 3.month";
cin>>x;
// vector<Item>::iterator it;
switch(x){
case 1:
std::sort(items.begin(), items.end(), Inventory::SORT_BY_NAME);
}
しかし、Items::name は非公開であると書かれています