在 C++ 中,less
并不是一個(gè)關(guān)鍵字。你可能指的是 std::less
,它是一個(gè)函數(shù)對(duì)象(也稱為比較器或仿函數(shù)),用于執(zhí)行“小于”操作。std::less
位于
std::less
的基本用法如下:
#include<iostream>
#include<functional>
int main() {
int a = 5, b = 10;
// 使用 std::less 進(jìn)行比較
if (std::less<int>()(a, b)) {
std::cout << "a is less than b"<< std::endl;
} else {
std::cout << "a is not less than b"<< std::endl;
}
return 0;
}
在這個(gè)例子中,我們使用 std::less<int>()
創(chuàng)建了一個(gè) std::less
實(shí)例,然后調(diào)用它的 operator()
方法來比較兩個(gè)整數(shù)。
然而,更常見的用法是將 std::less
用作其他算法或容器的參數(shù)。例如,std::sort
函數(shù)接受一個(gè)比較函數(shù)作為參數(shù),你可以使用 std::less
作為默認(rèn)比較器:
#include<iostream>
#include<vector>
#include<algorithm>
#include<functional>
int main() {
std::vector<int> numbers = {3, 1, 4, 1, 5, 9, 2, 6};
// 使用 std::less 對(duì)向量進(jìn)行排序
std::sort(numbers.begin(), numbers.end(), std::less<int>());
for (int num : numbers) {
std::cout<< num << " ";
}
return 0;
}
在這個(gè)例子中,我們使用 std::sort
對(duì)一個(gè)整數(shù)向量進(jìn)行排序,并將 std::less<int>()
作為比較器傳遞給它。這將按升序?qū)ο蛄窟M(jìn)行排序。