c++ - BinaryNode and oldNode was not declared in this scope -
मेरे .h फ़ाइल में मेरे पास है:
वर्ग BST {private: struct BinaryNode { //चर }; ... सार्वजनिक: ...} जब मैं अपने struct BinaryNode का उपयोग करने की कोशिश करता हूं जैसे मेरी। सीपीपी फ़ाइल: int bst :: ऊंचाई (binaryNode * t) {...} मुझे इस त्रुटि मिलती है कि इस क्षेत्र में BinaryNode घोषित नहीं किया गया मेरे .cpp में किसी अन्य फ़ंक्शन में मेरे पास है:
int BST :: remove (const DataType & amp; x, binaryNode * & amp; t) {... else {BinaryNode * पुराना नोड = टी; पुराना नोड हटाएं; }} मुझे BinaryNode * oldNode = t पर त्रुटि बताती है कि इस क्षेत्र में पुराना नोड को घोषित नहीं किया गया था। मैंने इसे अपने कार्य की शुरुआत में BinaryNode * oldNode; के रूप में घोषित करने की कोशिश की है, लेकिन वह भी काम नहीं कर रहा है। मैं इस धारणा के तहत था कि मैंने जो भी किया वो भी इसे घोषित करने के लिए कहा जाता है और क्योंकि यह एक ही समारोह में है, उस दायरे में इसे घोषित किया गया है। किसी भी मदद की सराहना की जाएगी।
बाइनरीएनोड को संलग्न वर्ग के नाम स्थान में शामिल किया गया है। यह करें:
int bst :: ऊंचाई (बीएसटी :: बाइयन नोड * t) आप यह भी आज़मा सकते हैं:
सीपीपी फ़ाइल के शीर्ष पर BST :: BinaryNode का उपयोग कर रहा हूं, हालांकि मुझे यकीन है कि "उपयोग" के लिए समर्थन की सार्वभौमिकता नहीं है।
Comments
Post a Comment