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

C++ में टाइप इन्फरेंस क्या है?


टाइप इन्फरेंस या डिडक्शन प्रोग्रामिंग भाषा में किसी एक्सप्रेशन के डेटा टाइप का स्वचालित पता लगाने को संदर्भित करता है। यह कुछ स्ट्रॉन्गली स्टैटिकली टाइप्ड भाषाओं में मौजूद एक विशेषता है। C++ में, auto कीवर्ड (C++11 में जोड़ा गया) ऑटोमैटिक टाइप डिडक्शन के लिए उपयोग किया जाता है। उदाहरण के लिए, आप एक वेक्टर पर पुनरावृति करने के लिए एक इटरेटर बनाना चाहते हैं, आप इसके लिए बस auto का उपयोग कर सकते हैं।

उदाहरण

#include<iostream>
#include<vector>
using namespace std;
int main() {
    vector<int> arr(10);
    for(auto it = arr.begin(); it != arr.end(); it++) {
        cin >> *it;
    }
    return 0;
}

उपरोक्त प्रोग्राम में, it स्वचालित रूप से std::vector<int>::iterator प्रकार प्राप्त करेगा।

  1. - C++ में 2D वेक्टर फ्लैटन करें - इटरेटर डिजाइन पैटर्न

    समस्या विवरण मान लीजिए हमारे पास एक 2D वेक्टर है, हमें उस 2D वेक्टर को फ्लैट करने के लिए एक इटरेटर डिजाइन और कार्यान्वित करना है। अलग-अलग विधियां होंगी: next() - वर्तमान तत्व का अगला तत्व लौटाएगा hasNext() - जांचेगा कि अगला तत्व मौजूद है या नहीं उदाहरण के लिए, यदि इनपुट [[1,2],[3],[4]] है तो यदि

  1. - C++ में टाइप इन्फरेंस (auto और decltype)

    इस ट्यूटोरियल में, हम C++ में टाइप इन्फरेंस (auto और decltype) को समझने वाले प्रोग्राम पर चर्चा करेंगे।auto कीवर्ड के मामले में, वेरिएबल का प्रकार उसके इनिशियलाइज़र के प्रकार से परिभाषित होता है। आगे decltype के साथ, यह आपको कॉल किए गए एलिमेंट से वेरिएबल का प्रकार निकालने देता है।auto टाइपउदाहरण#inc

  1. C/C++ में टाइप कास्ट क्या है? C/C++ में टाइप कास्ट क्या है?

    टाइप कास्टिंग एक वेरिएबल को एक डेटा टाइप से दूसरे डेटा टाइप में बदलने का एक तरीका है। उदाहरण के लिए, यदि आप एक long मान को एक साधारण इंटीजर में संग्रहीत करना चाहते हैं तो आप long को int में टाइप कास्ट कर सकते हैं। आप कास्ट ऑपरेटर का उपयोग करके मानों को एक प्रकार से दूसरे प्रकार में स्पष्ट रूप से बद