इस लेख में हम C++ STL में काम करने, वाक्य रचना और std::is_ तुच्छ टेम्पलेट के उदाहरणों पर चर्चा करेंगे।
is_trial एक टेम्प्लेट है जो
C++ में एक तुच्छ वर्ग प्रकार क्या है?
हम एक प्रकार को एक तुच्छ प्रकार के रूप में कहते हैं, जब इसका डेटा एक सन्निहित तरीके से संग्रहीत किया जाता है और जो केवल स्थिर डिफ़ॉल्ट आरंभीकरण को स्वीकार करता है। इसमें किसी भी प्रकार के सरणियाँ, वर्ग और अदिश प्रकार शामिल हो सकते हैं।
तुच्छ वर्ग एक ऐसा वर्ग है जो तुच्छ रूप से डिफ़ॉल्ट रूप से निर्मित और तुच्छ रूप से कॉपी करने योग्य है। कक्षा को तुच्छ बनाते समय कुछ बातों का ध्यान रखना चाहिए -
- इसमें कोई वर्चुअल सदस्य या वर्चुअल बेस क्लास नहीं होना चाहिए।
- कोई स्थिर सदस्य नहीं है।
- गैर-स्थिर सदस्यों के साथ कोई बेस क्लास नहीं
सिंटैक्स
template <class T> is_trivial;
पैरामीटर
टेम्प्लेट में केवल T प्रकार के पैरामीटर हो सकते हैं, और जांच सकते हैं कि दिया गया प्रकार एक तुच्छ प्रकार का वर्ग है या नहीं।
रिटर्न वैल्यू
यह एक बूलियन मान देता है, यदि दिया गया प्रकार एक तुच्छ वर्ग प्रकार है, और यदि दिया गया प्रकार एक तुच्छ वर्ग प्रकार नहीं है, तो यह सही है।
उदाहरण
Input: class A {}; class B { B() {} }; class D { virtual void fn() {} }; cout<<”A: ”<<is_trivial<A>; cout<<”B: ”<<is_trivial<B>; cout<<”D: ”<<is_trivial<D>; Output: A: True B: False D: False
उदाहरण
#include <iostream> #include <type_traits> using namespace std; class TP_1 { }; class TP_2 { TP_2(){ } }; class TP_3 : TP_2 { }; class TP_4 { virtual void dummy() { } }; int main() { std::cout << std::boolalpha; //Returns value in boolean type std::cout << "TP_1: " << std::is_trivial<TP_1>::value << endl; std::cout << "TP_2: " << std::is_trivial<TP_2>::value << endl; std::cout << "TP_3: " << std::is_trivial<TP_3>::value << endl; std::cout << "TP_4: " << std::is_trivial<TP_4>::value << endl; return 0; }
आउटपुट
यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -
TP_1: true TP_2: false TP_3: false TP_4: false