जैसा कि मैं इसे समझता हूं, constexpr
टेम्पलेट मेटाप्रोग्रामिंग के विपरीत पूर्ण नहीं है, इसलिए मेरा मानना है कि ये समान नहीं हैं। तो सवाल यह है कि constexpr
किस हद तक टेम्पलेट मेटाप्रोग्रामिंग अप्रचलित बनाता है?सी ++ 11 constexpr?
उत्तर
constexpr
बिल्कुल ट्यूरिंग-पूर्ण है। रिकर्सन की अनुमति है। संकलन समय के साथ-साथ रनटाइम पर काम करने वाले कार्यों को परिभाषित करने का यह एक सुविधाजनक तरीका है। constexpr
फ़ंक्शंस, केवल फ़ंक्शंस होने पर, प्रकारों पर संचालन नहीं कर सकते हैं, हालांकि। (जब तक आप टेम्पलेट मेटाप्रोग्रामिंग का उपयोग निश्चित रूप से निर्दिष्ट फ़ंक्शन को परिभाषित करने के लिए नहीं करते हैं।)
दोनों कक्षा टेम्पलेट्स और constexpr
का उपयोग संकलन-समय निरंतर अभिव्यक्तियों को रखने के लिए किया जा सकता है, लेकिन समानता समाप्त होती है। वे अनावश्यक नहीं हैं और जल्द ही टीएमपी कभी नहीं जा रहे हैं।
कुछ विशेष रूप से बदसूरत संकलन-समय की गणना उचित कार्यों के रूप में अधिक सुंदर ढंग से फिर से लिखी जा सकती है।
+1 कि 'constexpr' प्रकारों पर काम नहीं कर सकता है। –
इसे समझाने के लिए धन्यवाद ... – polapts
- 1. सी ++ 11 constexpr समारोह के तर्क टेम्पलेट दिया गया तर्क
- 2. सी ++ 11
- 3. चर पर बनाम constexpr
- 4. सी ++ 11
- 5. सी ++ 11 प्रकार एनम मैपिंग के लिए?
- 6. संख्यात्मक_limits न्यूनतम/अधिकतम constexpr हैं?
- 7. सी ++ 11 कॉन्स्टेक्स स्ट्रिंग कार्यान्वयन
- 8. मेकिंग समारोह टेम्पलेट पैरामीटर सी ++ 11
- 9. constexpr चर
- 10. स्थिर constexpr सदस्य समारोह
- 11. सी ++ 11
- 12. सी ++ 11
- 13. सी 11
- 14. सी ++ 11
- 15. सी 11
- 16. सी ++ 11
- 17. सी ++ 11
- 18. सी ++ 11
- 19. सी ++ 11
- 20. सी ++ 11
- 21. सी ++ 11
- 22. सी ++ 11?
- 23. सी ++ 11
- 24. सी 11
- 25. सी ++ 11
- 26. सी ++ में टेम्पलेटेड यूनियन 11
- 27. सी ++ 0x (सी ++ 11)?
- 28. constexpr, static_assert, और
- 29. सी ++ 98 और सी ++ 11
- 30. सी 11 बनाम सी 99
'constexpr' ट्यूरिंग पूर्ण है (स्पष्ट रूप से अनंत आवश्यकताओं को अनदेखा कर रहा है)। –
@ आर। मार्टिन्होफर्नैंड्स: यदि 'कॉन्टेक्सप्र' पूर्ण ट्यूरिंग है, तो कृपया दोनों सिरों में बढ़ने योग्य पूर्णांक की सूची मॉडल करने के लिए केवल 'constexpr' का उपयोग करें। – kennytm
@ आर। मार्टिनिन्हो फर्नांडीस: आप http://stackoverflow.com/questions/9201506/is-constexpr-based-computation-turing-complete के उत्तर को पोस्ट करने में दिलचस्प हो सकते हैं। – kennytm