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

C++ STL में array::fill() और array::swap()


std::array में fill() और swap()

इस खंड में हम देखेंगे कि C++ STL में array::fill() और array::swap() का उपयोग क्या है।

array::fill()

array::fill() फंक्शन का उपयोग सरणी को किसी निर्दिष्ट मान से भरने के लिए किया जाता है।

सिंटैक्स

array.fill(value);

उदाहरण

#include <iostream>
#include <array>
using namespace std;

int main() {
    array<int, 10> arr = {0, 11, 22, 33, 44, 55, 66, 77, 88, 99};

    cout << "Array elements: ";
    for(auto it = arr.begin(); it != arr.end(); it++) {
        cout << *it << " ";
    }

    // सरणी को 5 से भरें
    arr.fill(5);

    cout << "\nArray elements after fill: ";
    for(auto it = arr.begin(); it != arr.end(); it++) {
        cout << *it << " ";
    }
    return 0;
}

आउटपुट

Array elements: 0 11 22 33 44 55 66 77 88 99
Array elements after fill: 5 5 5 5 5 5 5 5 5 5

array::swap()

array::swap() फंक्शन का उपयोग एक सरणी की सामग्री को दूसरी सरणी के साथ स्वैप करने के लिए किया जाता है। दोनों सरणियों का आकार समान होना चाहिए।

सिंटैक्स

array1.swap(array2);

उदाहरण

#include <iostream>
#include <array>
using namespace std;

int main() {
    array<int, 10> arr1 = {0, 11, 22, 33, 44, 55, 66, 77, 88, 99};
    array<int, 10> arr2 = {85, 41, 23, 65, 74, 2, 51, 74, 98, 22};

    cout << "Array1 elements: ";
    for(auto it = arr1.begin(); it != arr1.end(); it++)
        cout << *it << " ";

    cout << "\nArray2 elements: ";
    for(auto it = arr2.begin(); it != arr2.end(); it++)
        cout << *it << " ";

    // सरणी तत्वों को स्वैप करें
    arr1.swap(arr2);

    cout << "\nArray1 elements (After swap): ";
    for(auto it = arr1.begin(); it != arr1.end(); it++)
        cout << *it << " ";

    cout << "\nArray2 elements (After swap): ";
    for(auto it = arr2.begin(); it != arr2.end(); it++)
        cout << *it << " ";

    return 0;
}

आउटपुट

Array1 elements: 0 11 22 33 44 55 66 77 88 99
Array2 elements: 85 41 23 65 74 2 51 74 98 22
Array1 elements (After swap): 85 41 23 65 74 2 51 74 98 22
Array2 elements (After swap): 0 11 22 33 44 55 66 77 88 99

महत्वपूर्ण बिंदु

  • fill() सभी तत्वों को दिए गए मान पर सेट करता है - O(N)
  • swap() दो सरणियों की सामग्री का आदान-प्रदान करता है - O(N)
  • दोनों के लिए सरणियों का आकार समान होना चाहिए (कंपाइल-टाइम स्थिर)
  • swap() नो-थ्रो गारंटी देता है (नहीं फेंकता)
  • C-स्टाइल सरणियों के विपरीत, std::array मूल्य शब्दार्थ के साथ असाइनमेंट और स्वैप का समर्थन करता है

अन्य उपयोगी array मेथड्स

मेथड विवरण
at(i) बाउंड्स चेकिंग के साथ एक्सेस
front()/back() पहला/अंतिम तत्व
data() रॉ पॉइंटर प्राप्त करें
size()/max_size() आकार प्राप्त करें
empty() खाली जांचें
begin()/end() इटरेटर्स
rbegin()/rend() रिवर्स इटरेटर्स
  1. - C++ STL में सरणी एल्गोरिदम (C++11 से)

    C++11 के बाद से STL में विभिन्न फ़ंक्शन जोड़े गए हैं। ये फ़ंक्शन एल्गोरिदम हेडर फाइल में मौजूद हैं। यहां हम इनमें से कुछ फ़ंक्शन देखेंगे। all_of() फ़ंक्शन का उपयोग एक शर्त की जांच के लिए किया जाता है, जो एक कंटेनर के सभी तत्वों के लिए सही है। आइए कोड देखें। उदाहरण #include <iostream> #includ

  1. - C++ STL में array::crbegin() और array::crend()

    array::crbegin() और array::crend() यहां हम C++ STL में सरणी के crbegin() और crend() फंक्शन्स देखेंगे। array::crbegin() फंक्शन का उपयोग रिवर्स इटरेटर प्राप्त करने के लिए किया जाता है। यह कंटेनर के अंतिम तत्व को इंगित करने वाला कॉन्स्टेंट रिवर्स इटरेटर लौटाता है। यह फंक्शन कोई पैरामीटर नहीं लेता। a

  1. - C++ STL में unordered_multimap swap() फ़ंक्शन

    C++ STL में unordered_multimap swap() फ़ंक्शन एक मल्टीमैप के एलिमेंट्स को उसी आकार और प्रकार के दूसरे मल्टीमैप से स्वैप करने के लिए उपयोग किया जाता है। एल्गोरिथम Begin    Declaring two empty map container m, m1.    Insert some values in both m, m1 map containers.    Pe