मैं एक सार-बेस-क्लास बना रहा हूं और सोच रहा था कि मैं शुद्ध वर्चुअल सिग्नल चाहता हूं। लेकिन जब मैं मैं शुद्ध आभासी संकेत मैं परिभाषित किया है के लिए एक चेतावनी प्राप्त संकलित:क्या यह C++/Qt में शुद्ध वर्चुअल सिग्नल को परिभाषित करने के लिए मान्य है?
../FILE1.h:27: Warning: Signals cannot be declared virtual
../FILE1.h:28: Warning: Signals cannot be declared virtual
यह सी ++/क्यूटी में एक शुद्ध आभासी संकेत परिभाषित करने के लिए मान्य है? क्या यह वर्चुअल सिग्नल को परिभाषित करने के लिए मान्य है?
Qt's signal and slot documentation page कहता है कि आप वर्चुअल स्लॉट को परिभाषित कर सकते हैं लेकिन सिग्नल के बारे में बात नहीं करते हैं। मुझे शुद्ध वर्चुअल सिग्नल पर अच्छी जानकारी नहीं मिल रही है।
[एक असंबंधित नोट पर Qt शुद्ध आभासी स्लॉट की अनुमति देता है ... लेकिन शुद्ध आभासी संकेतों के बारे में कोई उल्लेख नहीं है।] (Http://stackoverflow.com/questions/2998216/does-qt-support-virtual-pure-slots) –
आपको क्यों लगता है कि आप सिग्नल वर्चुअल बनाना चाहते हैं? – Chris
सीआरटीपी और जेनेरिक बेस क्लास का उपयोग करते हुए एक अलग दृष्टिकोण दिया गया है [इस जवाब में] (http://stackoverflow.com/a/32124726/1329652)। यह कई 'QObject' व्युत्पन्न कक्षाओं के लिए सामान्य कोड से बाहर फैक्टरिंग की अनुमति देता है, भले ही वे विभिन्न आधार वर्गों से प्राप्त होते हैं (उन्हें सीधे' QObject' से प्राप्त करने की आवश्यकता नहीं है)। –