Სარჩევი:
ვიდეო: რა არის C++ ლამბდა?
2024 ავტორი: Lynn Donovan | [email protected]. ბოლოს შეცვლილი: 2023-12-15 23:49
C++11-ში და შემდეგში, ა ლამბდა გამოხატულება - ხშირად უწოდებენ ა ლამბდა -არის მოსახერხებელი გზა ანონიმური ფუნქციის ობიექტის (დახურვის) განსასაზღვრად სწორედ იმ ადგილას, სადაც ის გამოძახებულია ან არგუმენტად გადაეცემა ფუნქციას.
ამასთან დაკავშირებით, რა ტიპისაა Lambda C++?
[C++11: 5.1. 2/3]: ტიპი საქართველოს ლამბდა -გამოთქმა (რომელიც ასევე არის ტიპი დახურვის ობიექტის) არის უნიკალური, უსახელო არა-კავშირის კლასი ტიპი - დაუძახა დახურვას ტიპი - რომლის თვისებები აღწერილია ქვემოთ. Ეს კლასი ტიპი არ არის აგრეგატი (8.5.
გარდა ამისა, რატომ გვჭირდება ლამბდა გამონათქვამები C++-ში? C++ შემოღებული ფუნქციის ობიექტები, ან ფუნქციები. ფუნქციონერები არიან კლასები, რომლებიც გადატვირთავს ოპერატორს(). სხვა პროგრამირების ენები, როგორიცაა Haskell, C#, Erlang ან F#, ჩართავენ ფუნქციების განმარტებებს იქ, სადაც ისინი გამოიყენება. ესენი არიან ცნობილი როგორც ლამბდა გამონათქვამები რადგან მისი სინტაქსი არის შთაგონებული ლამბდა გაანგარიშება.
ასევე საკითხავია, როგორ უნდა გაიაროთ ლამბდა ფუნქცია C++-ში?
ლამბდას არგუმენტად ფუნქციაში გადაცემის 3 გზა:
- std:: ფუნქციის გამოყენება ლამბდა ობიექტის გამოსაცხადებლად. void lambdaExample1()
- typedef-ის გამოყენება ფუნქციის ტიპის გამოსაცხადებლად და ლამბდა ფუნქციის მინიჭებისთვის. void lambdaExample2()
- struct-ის გამოყენება ლამბდას გამოსაცხადებლად.
რა არის ლამბდა დახურვა?
ა ლამბდა არსებითად არის ფუნქცია, რომელიც განისაზღვრება inline და არა ფუნქციების გამოცხადების სტანდარტული მეთოდით. ლამბდას შეიძლება ხშირად გადაიტანონ, როგორც საგნები. ა დახურვა არის ფუნქცია, რომელიც მოიცავს მის გარემომცველ მდგომარეობას მისი სხეულის გარე ველების მითითებით.