আমি যে উদাহরণগুলি পেয়েছি যে this
ল্যাম্বডায় ক্যাপচার তা স্পষ্টভাবে ব্যবহার করে; উদাহরণ:
capturecomplete = [this](){this->calstage1done();};
তবে মনে হয় এটি সুস্পষ্টভাবে ব্যবহার করাও সম্ভব; উদাহরণ:
capturecomplete = [this](){calstage1done();};
আমি এটি জি ++ তে পরীক্ষা করেছি এবং এটি সংকলিত হয়েছে।
এই স্ট্যান্ডার্ড সি ++? (এবং যদি তাই হয় তবে কোন সংস্করণ), বা এটি কোনও প্রকারের এক্সটেনশান?
আমি এটি দেখতে বাছাই করতে পারি, তবে একই সাথে এটি একটি সাধারণ কাজটি কী হওয়া উচিত তার জন্য ভয়াবহ ভারবস বলে মনে হয়।
—
প্লাগওয়াশ
আমার মনে আছে এমএসভিসি (সম্ভবত কেবলমাত্র 2015)
—
ফ্ল্যামফায়ার
this
ল্যাম্বডায় এটি ক্যাপচার এবং ব্যবহারে সমস্যা রয়েছে যা এটি স্পষ্টভাবে ব্যবহার করার কারণ হতে পারে
@ প্লাগওয়াশ: বিকাশকারীরা সর্বদা অলস হয়ে থাকে এবং জিনিসগুলি হ্রাস করতে চায় এবং ভাষা ডিজাইনাররা এর চেয়ে আলাদাও নয়। তবে অস্পষ্টতাকে সমাধান করার জন্য প্রায়শই ভার্বোসিটির প্রয়োজন হয় এবং এখানেও এটি ঘটে।
—
ফ্ল্যাটার
this->
স্পষ্টতই ব্যবহার করার একটি সম্ভাব্য কারণ রয়েছে , যা নিশ্চিত করা যে স্পষ্টভাবে ক্যাপচার করা মানগুলি স্পষ্টভাবে ব্যবহার করা হয়েছে। দ্রষ্টব্য যে[](){ calstage1done(); }
আইনী হবে না, কারণthis
ধরা পড়েনি; কিন্তু যখন ক্যাপচারthis
স্পষ্টভাবে, এটা বিস্ময়কর ব্যাপার ফাংশন বডির করার জন্য প্রদর্শিত করতে আসলে দখল মান ব্যবহার এক নজরে না:[this](){ calstage1done(); }
।