Rumah > pembangunan bahagian belakang > C++ > Apakah objek fungsi STL yang biasa digunakan dalam perpustakaan standard C++?

Apakah objek fungsi STL yang biasa digunakan dalam perpustakaan standard C++?

王林
Lepaskan: 2024-04-25 13:06:02
asal
525 orang telah melayarinya

C++ STL menyediakan pelbagai objek fungsi yang boleh digunakan untuk membandingkan, mengisih dan mengendalikan elemen. Objek fungsi biasa termasuk kurang untuk pengisihan menaik, lebih besar untuk pengisihan menurun, equal_to untuk membandingkan kesamaan dan bind2nd dan mem_fn untuk parameter fungsi mengikat. Dalam amalan, anda boleh mengisih tatasusunan dalam tertib menurun dengan menggunakan objek fungsi yang lebih besar, seperti berikut: Menggunakan fungsi sort(), objek fungsi yang lebih besar akan mengisih elemen dalam julat yang ditentukan dalam tertib menurun.

C++ 标准库中有哪些常用的 STL 函数对象?

Objek fungsi STL yang biasa digunakan dalam perpustakaan standard C++

Objek fungsi iaitu Functor ialah objek yang boleh dipanggil dan mengembalikan hasil. Pustaka standard C++ menyediakan banyak objek fungsi STL berguna yang boleh digunakan untuk pelbagai algoritma dan operasi.

Berikut ialah beberapa objek fungsi yang biasa digunakan dalam C++ STL:

  • less: Fungsi perbandingan yang digunakan untuk mengisih unsur (tertib menaik).
  • lebih hebat: Fungsi perbandingan digunakan untuk mengisih elemen (tertib menurun).
  • equal_to: Fungsi perbandingan yang sama, digunakan untuk menyemak sama ada dua elemen adalah sama.
  • not_equal_to: Fungsi perbandingan tidak sama, digunakan untuk menyemak sama ada dua elemen tidak sama.
  • greater_equal: Lebih besar daripada atau sama dengan fungsi perbandingan, digunakan untuk menyemak sama ada sesuatu elemen lebih besar daripada atau sama dengan elemen lain.
  • less_equal: Kurang daripada atau sama dengan fungsi perbandingan, digunakan untuk menyemak sama ada satu elemen kurang daripada atau sama dengan elemen lain.
  • bind2nd: Mengikat parameter objek fungsi dan mengembalikan objek fungsi terikat.
  • mem_fn: Cipta objek fungsi yang mencipta objek fungsi daripada penuding fungsi ahli.

Kes praktikal:

Gunakan objek fungsi greater untuk mengisih tatasusunan integer dalam tertib menurun:

#include <algorithm>
#include <vector>

using namespace std;

int main() {
  vector<int> myVector = {1, 3, 5, 2, 4};

  // 使用 greater 函数对象对 myVector 中的元素进行降序排序
  sort(myVector.begin(), myVector.end(), greater<int>());

  // 输出排序后的数组
  for (auto it = myVector.begin(); it != myVector.end(); ++it) {
    cout << *it << " ";
  }
  cout << endl;

  return 0;
}
Salin selepas log masuk

Output:

5 4 3 2 1
Salin selepas log masuk

Atas ialah kandungan terperinci Apakah objek fungsi STL yang biasa digunakan dalam perpustakaan standard C++?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan