ዝርዝር ሁኔታ:

C++ lambda ምንድን ነው?
C++ lambda ምንድን ነው?

ቪዲዮ: C++ lambda ምንድን ነው?

ቪዲዮ: C++ lambda ምንድን ነው?
ቪዲዮ: C++ Tutorial For Beginners In Amharic Part 1 | C++ ለጀማሪዎች ፓርት 1 | C++ ምንድን ነው 2024, ግንቦት
Anonim

በC++11 እና በኋላ፣ ሀ lambda አገላለጽ - ብዙ ጊዜ ሀ lambda - ስም-አልባ ተግባር ነገርን (መዘጋት) በተጠራበት ወይም ለተግባር እንደ ሙግት በተላለፈበት ቦታ በትክክል የሚገልጽ ምቹ መንገድ ነው።

ከዚህ አንፃር Lambda C++ ምን አይነት ነው?

[C++11፡ 5.1. 2/3]፡ የ ዓይነት የእርሱ lambda - መግለጫ (ይህም ደግሞ የ ዓይነት የመዝጊያው ነገር) ልዩ፣ ያልተሰየመ ማህበር ያልሆነ ክፍል ነው። ዓይነት - መዘጋቱ ይባላል ዓይነት - የማን ንብረቶች ከዚህ በታች ተብራርተዋል. ይህ ክፍል ዓይነት ድምር አይደለም (8.5.

በተጨማሪም፣ ለምን በC++ ውስጥ ላምዳ አገላለጾችን እንፈልጋለን? ሲ++ አስተዋውቋል ተግባር ነገሮች, ወይም functors. ተዋናዮች ናቸው። ኦፕሬተሩን () የሚጫኑ ክፍሎች. እንደ Haskell፣ C#፣ Erlang ወይም F# ያሉ ሌሎች የፕሮግራም አወጣጥ ቋንቋዎች የተግባር ፍቺዎችን በሚጠቀሙበት ቦታ ላይ ያነቃሉ። እነዚህ ናቸው። በመባል የሚታወቅ lambda መግለጫዎች ምክንያቱም በውስጡ አገባብ ነው። ውስጥ ተመስጦ lambda ስሌት.

እንዲሁም ጥያቄው በ C ++ ውስጥ ላምዳ ተግባር እንዴት ማለፍ እንደሚቻል ነው?

ላምዳ እንደ ሙግት ወደ ተግባር ለማለፍ 3 መንገዶች፡-

  1. ላምዳ ነገር ለማወጅ std:: ተግባርን በመጠቀም። ባዶ ላምዳ ምሳሌ1()
  2. የተግባር አይነት ለማወጅ እና የላምዳ ተግባር ለመመደብ typedefን በመጠቀም። ባዶ ላምዳ ምሳሌ2()
  3. ላምዳ ለማወጅ struct በመጠቀም።

ላምዳ መዘጋት ምንድነው?

ሀ lambda ከመደበኛው የማወጅ ዘዴ ይልቅ በመስመር ውስጥ የተገለጸ ተግባር ነው። ላምዳስ በተደጋጋሚ እንደ እቃዎች ሊተላለፍ ይችላል. ሀ መዘጋት ከሰውነቱ ውጪ የሆኑ መስኮችን በማጣቀስ በዙሪያው ያለውን ሁኔታ የሚሸፍን ተግባር ነው።