अगर हम जैसे कुछ लिखें:"int int [5] {};" में "{}" का उद्देश्य क्या है?
int *arr = new int[5];
इस मामले में, प्रणाली गतिशील प्रकार int
के 5 तत्वों के लिए जगह आवंटित और अनुक्रम के पहले तत्व के लिए सूचक देता है। new
ऑपरेटर के बाद
int *arr = new int[5]{};
तो, क्या मतलब है {}
:
लेकिन, एक बार मैं निम्नलिखित कोड देखा था? इस कोड में {}
का उद्देश्य क्या है?
मैं अपने खुद के मूल्य के साथ सरणी प्रारंभ की है, इस तरह:
#include <iostream>
int main()
{
int* a = new int[5]{1};
for(int i = 0; i < 5; i++)
std::cout<< a[i]<<' ';
delete[] a;
}
आउटपुट:
1 0 0 0 0
केवल पहला तत्व प्रिंट 1
। क्यूं कर?
int *arr = new int[5]{};
है, जबकि
मैं आपको [इस 'नया' संदर्भ] (http://en.cppreference.com/w/cpp/language/new) पढ़ने के लिए अपना समय लेने की सलाह देता हूं। वाक्यविन्यास का वर्णन करने वाली तालिका में, * प्रारंभकर्ता * भाग को नोट करें। फिर इसके बारे में अधिक पढ़ने के लिए [निर्माण] (http://en.cppreference.com/w/cpp/language/new#Construction) के बारे में अनुभाग पर स्क्रॉल करें। –
यह वाक्यविन्यास C++ 11. के बाद उपयोग में है। यह घुंघराले ब्रेसिज़ के अंदर निर्दिष्ट मानों के साथ या शून्य में शून्य के साथ एक सरणी प्रारंभ करने की अनुमति देता है। –
std :: वेक्टर का प्रयोग करें! –