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

सी++ में is_reference टेम्पलेट

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

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

यह टेम्प्लेट is_rvalue और is_lvalue का संयोजन है और यह जांचता है कि क्या कोई एक सत्य है या नहीं, तो is_reference का परिणाम भी सत्य होगा।

C++ में संदर्भ क्या है?

एक संदर्भ एक उपनाम या पहले से मौजूद चर का दूसरा नाम है। एक संदर्भ सूचक से भिन्न होता है -

  • चूंकि हम संदर्भ को शून्य के रूप में सेट नहीं कर सकते हैं लेकिन एक सूचक एक शून्य सूचक हो सकता है।
  • एक बार किसी ऑब्जेक्ट के लिए एक संदर्भ प्रारंभ हो जाने के बाद इसे बदला नहीं जा सकता है। पॉइंटर्स को किसी भी समय किसी अन्य वस्तु की ओर इशारा किया जा सकता है।
  • संदर्भ बनाते समय इनिशियलाइज़ किया जाना चाहिए, जहाँ पॉइंटर को निर्माण के बाद बाद में इनिशियलाइज़ किया जा सकता है।

जिस चर को हम संदर्भित करना चाहते हैं, उससे पहले एम्परसेंड (&) प्रतीक का उपयोग करके एक संदर्भ घोषित किया जा सकता है।

सिंटैक्स

template <class T> is_reference;

पैरामीटर

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

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

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

उदाहरण

Input: is_reference<int>::value;
Output: False

Input: is_reference<int&>::value;
Output: True

उदाहरण

#include <iostream>
#include <type_traits>
using namespace std;
class TP {
};
int main() {
   cout << boolalpha;
   cout << "Checking for is_reference: ";
   cout << "\n class TP : "<<is_reference<TP>::value;
   cout << "\n class TP&: "<<is_polymorphic<TP&>::value;
   cout << "\n class TP&&: "<<is_polymorphic<TP&&>::value;
   return 0;
}

आउटपुट

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

Checking for is_reference:
class TP : false
class TP&: false
class TP&&: false
के लिए जाँच कर रहा है

उदाहरण

#include <iostream>
#include <type_traits>
using namespace std;
int main() {
   cout << boolalpha;
   cout << "Checking for is_reference: ";
   cout << "\n int: "<<is_reference<int>::value;
   cout << "\n int&: "<< is_reference <int&>::value;
   cout << "\n int&&: "<< is_reference <int&&>::value;
   // char
   cout << "\n char: "<<is_reference<char>::value;
   cout << "\n char&: "<< is_reference <char&>::value;
   cout << "\n char&&: "<< is_reference <char&&>::value;
   //float
   cout << "\n float: "<<is_reference<float>::value;
   cout << "\n float&: "<< is_reference <float&>::value;
   cout << "\n float&&: "<< is_reference <float&&>::value;
   //double
   cout << "\n double: "<<is_reference<double>::value;
   cout << "\n double&: "<< is_reference <double&>::value;
   cout << "\n double&&: "<< is_reference <double&&>::value;
   return 0;
}

आउटपुट

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

Checking for is_reference:
int: false
int&: true
int&&: true
char: false
char&: true
char&&: true
float: false
float&: true
float&&: true
double: false
double&: true
double&&: true
के लिए जाँच कर रहा है
  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)