Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Вивчайте Algorithm Parameters | Working with Predicates and Algorithms
Practice
Projects
Quizzes & Challenges
Вікторини
Challenges
/
C++ Functional Utilities

bookAlgorithm Parameters

Свайпніть щоб показати меню

STL algorithms such as std::sort are designed to accept callable parameters, which means you can pass lambdas or function objects to customize their behavior. This feature allows you to define exactly how elements should be compared, transformed, or filtered during algorithm execution.

main.cpp

main.cpp

copy
1234567891011121314151617181920
#include <algorithm> #include <iostream> #include <vector> #include <string> int main() { std::vector<std::string> names = {"Alice", "Bob", "Charlie", "David"}; // Sort names by length using a lambda as a custom comparator std::sort(names.begin(), names.end(), [](const std::string& a, const std::string& b) { return a.size() < b.size(); } ); for (const auto& name : names) std::cout << name << " "; std::cout << std::endl; }

By providing a lambda, you can write concise, inline logic that is tailored to your specific task, without the need to define separate functions or classes. This leads to more expressive, maintainable, and flexible code, as you can adjust algorithm behavior directly at the call site.

question mark

What is the main advantage of passing a lambda as a parameter to an STL algorithm like std::sort?

Select the correct answer

Все було зрозуміло?

Як ми можемо покращити це?

Дякуємо за ваш відгук!

Секція 2. Розділ 2

Запитати АІ

expand

Запитати АІ

ChatGPT

Запитайте про що завгодно або спробуйте одне із запропонованих запитань, щоб почати наш чат

Секція 2. Розділ 2
some-alt