मेरे पास ऐसा वर्ग है
class A: public QDialog {A (QWidget * parent) ); स्थैतिक मानचित्र & lt; int, QString & gt; dataa; }; वर्ग बी: सार्वजनिक QThread {सार्वजनिक शून्य रन (); } वर्ग सी: सार्वजनिक QDialog {सार्वजनिक शून्य एबीसी (); } वर्गों का निर्धारण शून्य बी :: चलाने () {इस फ़ंक्शन में, मैं __dataa__ को __डेटा के रूप में प्रयोग कर रहा हूं .insert__which को प्रारंभिक रूप से ए कक्षा में सार्वजनिक रूप से परिभाषित किया गया है } Void C :: abc () {इस फ़ंक्शन में भी, मैं __dataa__ को __dataa.find__ और dataa.end__ के रूप में प्रयोग कर रहा हूं जो कि एक वर्ग में सार्वजनिक रूप से परिभाषित किया गया है। } अब कृपया मेरी सहायता करें कि मैं कैसे उस चर डेटा को अन्य दो वर्गों बी और सी में इस्तेमाल कर सकता हूँ मैंने देखा है कि हमें इसे स्थिर के रूप में घोषित करना होगा और इसे बी और सी में उपयोग करना होगा ए के रूप में वर्गीकृत: डेटा, लेकिन इसका काम नहीं कर रहा है और त्रुटि दे रही है।
इन तीन वर्गों को आरंभ किया जाता है
int main () {एक खिड़की; बी डेटाथ्रेड; Datathread.start // b Qthread को विरासत में मिली है और ए, सी QDialog विरासत में मिली हैं। वर्ग सी से एक प्रारंभिकता आरम्भ किया जाता है उस पर एक पुशबूटन पर क्लिक करके और एक नया विंडो में उसका संवाद खोलने के लिए। मुझे लगता है कि इस बार मैं अपने प्रश्न को स्पष्ट रूप से तैयार नहीं करने के लिए दोषी ठहराया जाता हूं। देवताओं के नाम पर कृपया मेरी मदद करो क्योंकि मैं इसे लंबे समय से रोक रहा हूं। किसी भी तरह की मदद के लिए अग्रिम धन्यवाद।
अपरिभाषित संदर्भ a :: dataa
आपको इसे ए में परिभाषित करना होगा। सीपीपी फ़ाइल कहें:
std :: map & lt; int, qstring & gt; एक :: dataa; यह सुनिश्चित करने के लिए कि कहीं और पहुंच योग्य है, वहां दो विकल्प हैं:
- इस मानचित्र वस्तु को
सार्वजनिक अनुभाग में घोषित करें - या इस ऑब्जेक्ट की प्रतिलिपि किसी फ़ंक्शन के जरिए प्राप्त की गई है जैसे @जिववा।
अब, अन्य यूनिटों में इस वैरिएबल को एक्सेस करने के लिए, आप पहले शामिल होंगे ए क्लास के लिए हेडर फाइल।
#include "आह" // या ऐसा कुछ .. और इसे एक्सेस करने के लिए: < पूर्व> शून्य बी :: रन () // और सी :: रन (..) के समान: {ए: डेटाए // इसके साथ कुछ करें ..}
Comments
Post a Comment