द्वारा संदर्भ कैसे प्राप्त किया जा रहा है यदि संदर्भ-प्रकार का चर लैम्बडा में मूल्य से कैप्चर किया जा रहा है, तो क्या इसे संदर्भ या मूल्य से कैद किया जा रहा है? सवाल के साथलैम्ब्डा में,
छोटा सा नमूना:
#include <iostream>
struct Test {
int a;
};
void testFunc(const Test &test) {
auto a = [=] {
// does 'test' is being passed to closure object with copy
// or by reference?
return test.a;
}();
std::cout << a;
}
int main() {
Test test{1};
testFunc(test);
}
अच्छा, इसका परीक्षण करने के बारे में क्या? (आपको इसके लिए ऑब्जेक्ट को संशोधित करने की आवश्यकता है, जिसे गैर-कॉन्स्ट संदर्भ के साथ या परिवर्तनीय 'म्यूटेबल' बनाकर हासिल किया जा सकता है।) –
[value] (http://ideone.com/R0HclW) द्वारा दिखाई देता है)। –
@JanHudec हां, परीक्षण अच्छा है, लेकिन यह हमेशा संबंधित मानक वर्गों और सैद्धांतिक रूप से आधारित उत्तर देखने के लिए उपयोगी होता है (SO पर ऐसे कई विशेषज्ञ हैं)। – Yury