यह परेशान है, मैं इन पैरामीटर/रिटर्न के साथ एक फ़ंक्शन लिख सकता हूं, लेकिन मैं ऐसा करने के लिए ऑपरेटर को परिभाषित क्यों नहीं कर सकता?मैं ऑपरेटर अधिभार में दो ptrs का उपयोग क्यों नहीं कर सकता?
-edit- मैं वास्तव में संदर्भ के लिए <<
अधिभारित करने की कोशिश कर रहा हूं।
// C2803.cpp
// compile with: /c
class A{};
bool operator< (const A *left, const A *right); // C2803
// try the following line instead
// bool operator< (const A& left, const A& right);
जीसीसी त्रुटि
error: ‘bool operator<(const A*, const A*)’ must have an argument of class or enumerated type
आपकी वास्तविक स्थिति क्या है जिसके लिए आपको उस तुलना की आवश्यकता है? –
@ केरेक: मेरा कोड ostringstream का उपयोग कर रहा है। अब मुझे एहसास है कि मुझे एक ढेर की जरूरत है और ओ अपडेट करें। मैं संदर्भ बीसी संदर्भों का उपयोग नहीं कर सकता बदल नहीं है। तो मुझे एक पीआरटी चाहिए। मैंने पहले से ही बहुत सारे कोड लिखे हैं और ओ << काम जारी रखने के लिए rhs चाहते हैं। कई rhs vars ptrs के साथ-साथ –
इसके बजाय आप 'o << * rhs' लिख नहीं सकते हैं? –