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() |
रिवर्स इटरेटर्स |