在C++中,std::max是一个非常方便的函数,用于获取两个值中的最大值。下面是一些使用std::max的技巧分享:
int a = 10;
int b = 20;
int maxVal = std::max(a, b);
struct Point {
int x;
int y;
};
bool operator<(const Point& p1, const Point& p2) {
return p1.x < p2.x || (p1.x == p2.x && p1.y < p2.y);
}
Point p1 = {1, 2};
Point p2 = {3, 4};
Point maxPoint = std::max(p1, p2);
int a = 10;
int b = 20;
int maxVal = std::max(a, b, [](int x, int y) { return x < y; });
std::vector<int> nums = {10, 20, 30, 40};
auto maxIter = std::max_element(nums.begin(), nums.end(), [](int x, int y) { return x < y; });
int maxVal = *maxIter;
总的来说,std::max是一个非常方便的函数,可以用于比较各种类型的值,无论是基本数据类型还是自定义类型。通过合适的参数传递,可以很方便地获取最大值。