c++ - Extend boost::dynamic_bitset to add some functionality -


मैं कुछ कार्यक्षमता के साथ boost :: dynamic_bitset वर्ग को बढ़ाने की कोशिश करता हूं, जैसे कि गिनती एक और ऑपरेशन के बाद बिट्स, आदि। इसके अलावा मुझे निजी सदस्यों (एम_एनयूएम_बिट, आदि) तक पहुंच की आवश्यकता है क्योंकि मैं सेट () पद्धति को "ओवरराइड" करने में सक्षम होना चाहता हूं ताकि बीटसेट की क्षमता को सुनिश्चित किया जा सके फिर से आकार () एफटीपी, यदि सेट के बिट के pos अधिक है तो वर्तमान बिट्स क्षमता यदि मैं मूल सेट () fct का उपयोग करता हूं तो उस मामले में एक तर्क त्रुटि के कारण (क्योंकि set () विधि ऐसी स्थिति में आकार नहीं है) < P> मुझे टेम्पलेट्स के साथ बहुत अनुभव नहीं है, मैं कुछ हफ्तों के बाद भी सी ++ में वापस आ रहा हूं, यह थोड़ा गड़बड़ है, शायद कोई मेरी मदद कर सकता है

मैंने ऐसा करना शुरू कर दिया:

  टेम्पलेट & lt; typename ब्लॉक, typename आबंटक & gt; कक्षा विस्तारित बिटसेट: सार्वजनिक बढ़ावा :: डायनामिक_बिसेकेट & lt; ब्लॉक, आबंटक & gt; {टाइप-टोफ़ बढ़ावा :: डायनामिक_बिसेकेट & lt; ब्लॉक, आबंटक & gt; सुपर; सार्वजनिक: शून्य सेट (std :: size_t pos) {if (pos> सुपर :: आकार ()) super :: resize (pos); सेट (स्थिति); } Bool get (std :: size_t pos) const {return super :: test (pos); }}; // ... ExtendedBitSet & lt; & gt; * बीएस = नया विस्तारित बिटसेट & lt; & gt; (128); bs- & gt; सेट (33); // ... std :: wcout & lt; & lt; "बिट 48 है" & lt; & lt; ((बीएसई- & gt; मिल (48) == सच)? "सच": "गलत") & lt; & lt; std :: endl; // ... हटाएं बीएस;   

बिल्कुल यह संकलन नहीं कर रहा है, त्रुटि है:

  गतिशील_बिट्टेस। Cpp: फ़ंक्शन में "int int" (int, char ** ) एक: ???? dynamic_bitset.cpp: 50: त्रुटि: टेम्पलेट तर्कों की गलत संख्या (0, 2 होनी चाहिए) dynamic_bitset.cpp: 7: त्रुटि: "टेम्प्लेट" के लिए प्रदान की गई; वर्ग टी, कक्षा आवंटन & gt; कक्षा विस्तारित बिटस्सेट ??? Dynamic_bitset.cpp: 50: त्रुटि: अमान्य प्रकार में घोषणा से पहले ???? = ??? टोकन dynamic_bitset.cpp: 50: त्रुटि: टेम्पलेट तर्कों की गलत संख्या (0, 2 होनी चाहिए) dynamic_bitset.cpp: 7: त्रुटि: "टेम्प्लेट" के लिए प्रदान किया गया; वर्ग टी, कक्षा आवंटन & gt; कक्षा विस्तारित बिटस्सेट ??? Dynamic_bitset.cpp: 51: त्रुटि: सदस्य के लिए अनुरोध ??? सेट करें ??? में एक ???? * बीएसए, जो कि गैर-वर्ग प्रकार का है? .. dynamic_bitset.cpp: 57: त्रुटि: सदस्य के लिए अनुरोध "प्राप्त करें" में एक ???? * बीएसए, जो कि गैर-वर्ग प्रकार का है?   

क्या कोई यह इशारा दे सकता है कि कैसे चल रहा है?

किसी भी मदद की काफी सराहना की जाती है।

आपका ExtendedBitSet टेम्पलेट प्रकार पैरामीटर के लिए कोई डिफ़ॉल्ट मानदंड नहीं है और आपका कोड उन्हें स्पष्ट रूप से निर्दिष्ट किए बिना इन्स्तांत करने का प्रयास कर रहा है ExtendedBitSet & lt; अहस्ताक्षरित, std :: allocator & lt; अहस्ताक्षरित & gt; & Gt; इसके बजाय बीएस

Comments

Popular posts from this blog

Python SQLAlchemy:AttributeError: Neither 'Column' object nor 'Comparator' object has an attribute 'schema' -

java - How not to audit a join table and related entities using Hibernate Envers? -

mongodb - CakePHP paginator ignoring order, but only for certain values -