猿问

C++的list容器怎么对里面的条目排序,以及怎么在想要的位置插入条目。


我在list里面放了类的指针,想通过类里面的一个number成员对整个list排序。

火车没有火
浏览 2277回答 2
2回答

慕设计2395807

APLBDTVENCLYNWFBXZJFTCMBPFHXMOXUWMODNWYUJSOXNPEUQSBKNPSEYNWZIXZCMHIJYOKSVQGWYVKGVEHCXMJSKLUHXKQDNJMLUQGVETHDMBUPRAJZBJSOYGVRACENWLUDGOKNJSUPYORETPFBKSUKTUPFUCENJFOQMOQZIDMILGQYGIKNWMBDGVENPYBPETVYBJKGVYHPSODGVZHDZGPSVQUDMOQABXFIETWENVRUDMBQNQAVKAOKGCRHJPRTDSHDGVYHHWQGIRHWSVRPSAKZPMVDGJNJFBVRNQSOXFUQGIKTPEUDHWRHWMOVRUWFIQGUKMOENJMOXRNWSUDZJOVENJYBJFBEDMHXGHDFUXMLUIRAWLHWFBIXTJYHBDTPRZIQACMBXNOKDFZJYUXZOKNRFOLNWMIKIKJYAXGIYHPLHGPRNQKMBETKMNQJWJCOLVOAWEHQMODABKSBKGVEAQMCEKZIYNWXGIFOIXGCRSVKTWYMPKGDKZCLHDFNVYOXZVKGKCRTJFHKGPYAZOJGCLGCYOKJYGPSTIYAWMKZUWLHDFOKGJFHDZOYNPYUIYHDFBXNWLIHWRTOKGJYODEAVQZBXZPLNSTBRGPYHQFIDZBXAHDZBKGXTCJMSIIRYBFNPFAJZBDMCEGIRADFIKZIKMIXTVWMBRGYUCFVEFHDMPGUCYOKGPKOKUQLUDZPEUJLVJMBQZWYNDZJETDZBQTCKGOQMUWLUXNKUDGWLOQTCLNQWFNWMORTVLUODFTPKTJLOXLUQFIEZPYTXETCYTCSIKTQKMOXGCLUWMVNJEUWRGVEUJHCYHWSUQMIKFIQAHKGIEUJWFZCLGJEAQZGIWFUWZBKNWMVRTJYHQSTJCLADLUKZVLU

AAnonymous

#include <bits/stdc++.h> class Person { public:     explicit Person(int n) : number(n) {};     int getNumber() const { return number; }; private:     int number; }; int main() {     std::list<Person *> personList;     auto printList = [&]() {         for (auto& person : personList)             std::cout << person->getNumber() << ", ";         std::cout << std::endl;     };     personList.emplace_back(new Person(1));     personList.emplace_back(new Person(5));     personList.emplace_back(new Person(9));     personList.emplace_back(new Person(3));     personList.emplace_back(new Person(7));     // order -> 1, 5, 9, 3, 7     printList();     // sorting     personList.sort([](const Person* a, const Person* b){         return a->getNumber() < b->getNumber();     });          // order -> 1, 3, 5, 7, 9     printList();     // release after exit }

GG_boy_h

迭代器遍历然后冒泡
随时随地看视频慕课网APP
我要回答