Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimanakah ungkapan C++ Lambda digunakan dalam pengaturcaraan berfungsi?

Bagaimanakah ungkapan C++ Lambda digunakan dalam pengaturcaraan berfungsi?

WBOY
WBOYasal
2024-06-04 20:31:01419semak imbas

C++ Lambda expression ialah alat pengaturcaraan berfungsi yang mudah Sintaksnya ialah: [capture_list] (parameter_list) -> return_type { body }Kes praktikal: Isih: Isih senarai perkataan mengikut panjang rentetan Penapisan: Penapisan boleh dibahagikan dengan 3 Senarai nombor.

C++ Lambda 表达式如何用于函数式编程?

C++ Ungkapan Lambda: alat berkuasa untuk pengaturcaraan berfungsi

Dalam C++, ungkapan lambda ialah cara paling mudah untuk menghantar blok kod sebagai parameter fungsi atau mengembalikan nilai. Sintaks ringkas dan kefungsian berkuasa menjadikan mereka alat berkuasa untuk pengaturcaraan berfungsi.

Syntax

Ungkapan lambda mempunyai format sintaks berikut:

[capture_list] (parameter_list) -> return_type { body }
  • capture_list: Tangkap senarai pembolehubah luaran yang boleh digunakan di dalam badan lambda.
  • parameter_list: Senarai parameter fungsi lambda.
  • return_type: Pilihan jenis return.
  • badan: lambda fungsi badan. Kes Isih kemungkinan Senarai nombor boleh dibahagi dengan 3:
  • #include <vector>
    #include <algorithm>
    
    int main() {
      std::vector<std::string> words = {"Hello", "World", "Lambda", "Expression"};
    
      std::sort(words.begin(), words.end(),
        [](const std::string& a, const std::string& b) {
          return a.size() < b.size();
        });
    
      for (const auto& word : words) {
        std::cout << word << "\n";
      }
      return 0;
    }

Output:

Hello
Lambda
World
Expression

Atas ialah kandungan terperinci Bagaimanakah ungkapan C++ Lambda digunakan dalam pengaturcaraan berfungsi?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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