मैं विजुअल स्टूडियो के साथ Qt (जो मैं नया हूं) 4.8.2 का उपयोग कर रहा हूं, और मैंने "संपर्क" नामक बेस क्लास बनाई है। मैं नहीं चाहता कि यह वर्ग क्यूटी-अनन्य हो, इसलिए मेरा इरादा एक और वर्ग "क्यूकॉन्टैक्ट" बनाना था जो "संपर्क", और क्यूओब्जेक्ट का उत्तराधिकारी होगा और सभी क्यूटी-संबंधित व्यवसायों जैसे कि Q_OBJECT मैक्रो के साथ सौदा करेगा आदिगैर-क्यूटी बेस क्लासेस
दुर्भाग्य से जब मैं विरासत में मिला है, निर्माण में विफल रहा है, कह रही:
moc_QContact.cpp(53): error C2039: 'staticMetaObject' : is not a member of 'Contact'
moc_QContact.cpp(75): error C2039: 'qt_metacast' : is not a member of 'Contact'
moc_QContact.cpp(80): error C2039: 'qt_metacall' : is not a member of 'Contact'
मैं वेब पर एक छोटे से शोध किया और पता चला कि आप गैर क्यूटी वर्ग से एक क्यूटी वर्ग प्राप्त नहीं सकता। इसलिए इसे ठीक करने के लिए, "संपर्क" "QObject" का उत्तराधिकारी हो सकता है (मैंने कोशिश की, यह काम किया)। लेकिन ऐसा करने से यह क्यूटी के लिए विशिष्ट होगा जो मेरी समस्या है।
तो मैं जो पूछता हूं वह यह है: आप एक क्यूटी कक्षा के लिए गैर-क्यूटी बेस क्लास कैसे बना सकते हैं?
धन्यवाद।
इसका मतलब है कि वर्ग के पास क्यूटी परियोजनाओं के बाहर कोई उपयोग नहीं होगा। इसके आसपास कोई रास्ता नहीं है? – MasterMastic
@ केन मुझे समझ में नहीं आता कि इसका क्या अर्थ है। यदि 'संपर्क' के पास 'QObject' के साथ कुछ भी नहीं है, तो इसका" क्यूटी परियोजनाओं के बाहर कोई उपयोग क्यों नहीं होगा "? क्या यह विचार आपके लक्ष्य को पहली जगह संग्रहित नहीं करना था? –
मुझे खेद है, मैं सरल बनाउंगा: मैं "क्यूओब्जेक्ट" से प्राप्त करने के लिए "संपर्क" नहीं चाहता हूं, क्योंकि अगर मैं इसे अन्य परियोजनाओं के लिए उपयोग करना चाहता हूं, तो मेरे पास QObject बेस क्लास फंस जाएगा, और यह एक है गैर-क्यूटी परियोजनाओं के साथ समस्या। – MasterMastic