Chủ đề: Lambda Expression
-
22-03-2016, 10:04 AM #1Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Lambda Expression
Em có đoạn code như sau:
Mã:#include <vector> #include <algorithm> #include <iostream> using namespace std; int main() { vector<unsigned long> numbers; vector<unsigned long> indexes; int n; cin >> n; int *A = new int [n]; for (int i = 0; i < n; i++) { cin >> A[i]; numbers.reserve(n); numbers.push_back(A[i]); indexes.reserve(numbers.capacity()); indexes.push_back(i); } sort(indexes.begin(), indexes.end(),[&numbers](unsigned long i1, unsigned long i2){return numbers[i1] < numbers[i2];}); for (auto i = indexes.begin(); i != indexes.end(); ++i) cout << *i << ' '; cout << endl; return 0; }
Các bác cho hỏi trong dòng
Mã:sort(indexes.begin(), indexes.end(),[&numbers](unsigned long i1, unsigned long i2){return numbers[i1] < numbers[i2];});
Mã:[&numbers](unsigned long i1, unsigned long i2){return numbers[i1] < numbers[i2])
Em đọc trên mạng thì thấy bảo là Lambda Expression nhưng chưa thực sự hiểu lắm ạ.View more random threads:
- Cách Trích Xuất File Exe của C++ như thế nào?
- Kill Process bằng việc Kill toàn bộ thread của Process đó trên VC++ như thế nào?
- Gọi các hàm unicode của MFC trong Project Multi-Byte Character
- Canh hàng code tự động trong Visual C++?
- ghi từng bít vào một địa chỉ trên C như thế nào?
- Vòng lặp While trong BUTTON??
- Tạo text có chứa button trong MFC như thế nào?
- Add menu vào dialog trong MFC Visual studio 2008???
- học lập trình visual c++! Cách viết một chương trình MFC?
- các hàm cài đặt trên cây Btree như thế nào?
-
22-03-2016, 01:40 PM #2Junior Member
- Ngày tham gia
- Sep 2015
- Bài viết
- 0
Cái lambda này là bứng từ bên function-oriented đem qua [IMG]images/smilies/smile.png[/IMG]
Thực ra con trỏ hàm rất dở nên thay bằng cái này nhìn nó sáng. Nhưng để sử dụng đc thì cần thêm khai báo auto, vì type thật của loại này ngán lắm nên để compiler tự tìm kiểu là tốt. Thực ra auto đi với C thì có vấn đề nhưng với C++ lại hay.
Với lại bạn có thể viết hàm trong hàm với lambda expression [IMG]images/smilies/biggrin.png[/IMG]
Pallet nhựa Long An đã trở thành một trong những lựa chọn phổ biến cho nhu cầu vận chuyển và lưu trữ hàng hóa trong nhiều ngành công nghiệp. Với đặc tính nhẹ nhàng, chắc chắn và dễ vận chuyển, các...
Thanh lý pallet nhựa Long An giá rẻ