युक्त कक्षा के लिए डिफ़ॉल्ट कन्स्ट्रक्टर मौजूद नहीं है क्यों निरंतर डेटा सदस्यों वाले वर्ग के लिए संकलक द्वारा डिफ़ॉल्ट कन्स्ट्रक्टर जोड़ा नहीं जाता है। कृपया नीचे दिए गए कोड को देखें, जिसमें मैंने निरंतर डेटा सदस्य 'ए' घोषित किया है और कक्षा 'कक्षा' के लिए ऑब्जेक्ट बनाने की कोशिश करते समय यह कह रहा है कि कोई उचित डिफ़ॉल्ट कन्स्ट्रक्टर उपलब्ध नहीं है। कृपया मदद करे।क्यों कॉन्स्ट डेटा सदस्यों
#include "stdafx.h"
#include <iostream>
using namespace std;
class ClassA
{
private:
const int a;
public :
void print()
{
cout << "hello world" << endl;
}
};
int main()
{
ClassA obj;
obj.print();
return 0;
}
आपको 'ए' आरंभ करना होगा। – chris
अन्यत्र टिप्पणियों के बावजूद, 'ए' के लिए स्पष्ट प्रारंभिकरण प्रारंभिक प्रारंभकर्ता, अर्थात्' int() 'है, जो शून्य के साथ आरंभ होगा। हां, यह (लगभग) व्यर्थ है, लेकिन क्या किसी के पास कोई संदर्भ है कि डिफ़ॉल्ट कन्स्ट्रक्टर के लिए यह क्यों संभव नहीं है? – Keith
@ किथ यह सिर्फ भाषा का एक विकल्प है। अंतर्निहित डेटा सदस्यों को डिफ़ॉल्ट रूप से प्रारंभ नहीं किया जाता है। – juanchopanza