में प्रारंभिक सूचियां मैंने सुना है कि कन्स्ट्रक्टर में प्रारंभिक सूचियों का उपयोग करने का लाभ यह होगा कि कक्षा प्रकार की वस्तुओं की कोई अतिरिक्त प्रतियां नहीं होंगी। लेकिन कक्षा टी कन्स्ट्रक्टर में निम्नलिखित कोड के लिए इसका क्या अर्थ है? अगर मैं असाइनमेंट पर टिप्पणी करता हूं और प्रारंभिक सूचियों का उपयोग करता हूं तो क्या अंतर होगा?कन्स्ट्रक्टर
#include <iostream>
using std::cout;
using std::endl;
using std::ostream;
class X {
public:
X(float f_x = 0, float f_y = 0):x(f_x), y(f_y) {}
~X() {}
X(const X& obj):x(obj.x), y(obj.y) {}
friend ostream& operator << (ostream &os, X &obj);
private:
float x;
float y;
};
ostream& operator << (ostream &os, X &obj)
{ os << "x = " << obj.x << " y = " << obj.y; return os;}
class T {
public:
T(X &obj) : x(obj) { /* x = obj */ }
~T() { }
friend ostream& operator << (ostream &os, T &obj);
private:
X x;
};
ostream& operator << (ostream &os, T &obj)
{ os << obj.x; return os; }
int main()
{
X temp_x(4.6f, 6.5f);
T t(temp_x);
cout << t << endl;
}
सुनिश्चित नहीं हैं कि अगर प्रासंगिक अपने प्रश्न का है, लेकिन आप शायद चाहते हैं टी (एक्स स्थिरांक और obj)। –
@ के-बॉलो: हाँ मैं भूल गया, धन्यवाद। – user767451