Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> C++

is_fundamental Template in C++

इस लेख में हम सी++ एसटीएल में काम करने, वाक्य रचना और std::is_fundamental टेम्पलेट के उदाहरणों पर चर्चा करेंगे।

is_ मौलिक एक टेम्पलेट है जो शीर्षलेख फ़ाइल के अंतर्गत आता है। इस टेम्प्लेट का उपयोग यह जांचने के लिए किया जाता है कि दिया गया प्रकार T एक मौलिक डेटा प्रकार है या नहीं।

मौलिक प्रकार क्या है?

मौलिक प्रकार अंतर्निहित प्रकार हैं जो पहले से ही संकलक में ही घोषित किए गए हैं। जैसे इंट, फ्लोट, चार, डबल, आदि। इन्हें बिल्ट-इन डेटा प्रकार के रूप में भी जाना जाता है।

सभी डेटा प्रकार जो उपयोगकर्ता द्वारा परिभाषित हैं जैसे:क्लास, एनम, स्ट्रक्चर, रेफरेंस या पॉइंटर्स, मौलिक प्रकार का हिस्सा नहीं हैं।

सिंटैक्स

template <class T> is_fundamental;

पैरामीटर

टेम्प्लेट में केवल T प्रकार का पैरामीटर हो सकता है, और जांच सकता है कि दिया गया प्रकार अंतिम श्रेणी का प्रकार है या नहीं।

रिटर्न वैल्यू

यह एक बूलियन मान देता है, यदि दिया गया प्रकार एक मौलिक डेटा प्रकार है, और यदि दिया गया प्रकार एक मौलिक डेटा प्रकार नहीं है, तो यह सही है।

उदाहरण

Input: class final_abc;
   is_fundamental<final_abc>::value;
Output: False

Input: is_fundamental<int>::value;
Output: True

Input: is_fundamental<int*>::value;
Output: False

उदाहरण

#include <iostream>
#include <type_traits>
using namespace std;
class TP {
   //TP Body
};
int main() {
   cout << boolalpha;
   cout << "checking for is_fundamental:";
   cout << "\nTP: "<< is_fundamental<TP>::value;
   cout << "\nchar :"<< is_fundamental<char>::value;
   cout << "\nchar& :"<< is_fundamental<char&>::value;
   cout << "\nchar* :"<< is_fundamental<char*>::value;
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -

checking for is_fundamental:
TP: false
char : true
char& : false
char* : false
के लिए जाँच कर रहा है

उदाहरण

#include <iostream>
#include <type_traits>
using namespace std;
int main() {
   cout << boolalpha;
   cout << "checking for is_fundamental:";
   cout << "\nint: "<< is_fundamental<int>::value;
   cout << "\ndouble :"<< is_fundamental<double>::value;
   cout << "\nint& :"<< is_fundamental<int&>::value;
   cout << "\nint* :"<< is_fundamental<int*>::value;
   cout << "\ndouble& :"<< is_fundamental<double&>::value;
   cout << "\ndouble* :"<< is_fundamental<double*>::value;
   return 0;
}

आउटपुट

यदि हम उपरोक्त कोड चलाते हैं तो यह निम्न आउटपुट उत्पन्न करेगा -

checking for is_fundamental:
int: true
double : true
int& : false
int* : false
double& : false
double* : false
के लिए जाँच कर रहा है
  1. फैब्स () सी ++ में

    सी या सी ++ लाइब्रेरी फ़ंक्शन डबल फैब्स (डबल एक्स) एक्स का पूर्ण मान देता है। x− यह फ्लोटिंग पॉइंट वैल्यू है। यह फ़ंक्शन x का निरपेक्ष मान लौटाता है। निम्नलिखित fabs() फ़ंक्शन के लिए घोषणा है। double fabs(double x) निम्न उदाहरण fabs() फ़ंक्शन के उपयोग को दर्शाता है। उदाहरण #include <iostream>

  1. Expm1 () सी ++ में

    फ़ंक्शन expm1() का उपयोग किसी भी संख्या घटाकर एक की घात तक बढ़ाए गए घातांक की गणना के लिए किया जाता है। यह (ए की घात में बढ़ाए गए घातांक) का मान लौटाता है - 1. यहाँ Expm1(), . का गणितीय व्यंजक है expm1(a) = (e^a) - 1 यहाँ C++ भाषा में expm1() का सिंटैक्स दिया गया है, float expm1(variable_name); य

  1. log1p () सी++ में

    फ़ंक्शन log1p() का उपयोग (a+1) के प्राकृतिक लघुगणक (आधार ई लघुगणक) की गणना के लिए किया जाता है, जहां a कोई भी संख्या है। यह (a+1) के प्राकृतिक लघुगणक का मान लौटाता है। जब हम -1 से कम मान पास करते हैं तो यह एक संख्या नहीं (नैन) देता है। यहाँ log1p(), . का गणितीय व्यंजक है log1p(a) = base-e log(a+1)