जैसा कि (उम्मीद है) हम सभी जानते हैं, vector<bool>
पूरी तरह से टूट गया है और सी सरणी के रूप में नहीं माना जा सकता है। इस कार्यक्षमता को प्राप्त करने का सबसे अच्छा तरीका क्या है? अब तक, मैंने जिन विचारों के बारे में सोचा है वे हैं:
vector<char>
इसके बजाय, या का उपयोग करें- एक आवरण वर्ग का उपयोग करें और करें
vector<bool_wrapper>
आप लोग इस समस्या को कैसे संभालेंगे? मुझे c_array()
कार्यक्षमता की आवश्यकता है ।
एक पक्ष के प्रश्न के रूप में, अगर मुझे c_array()
विधि की आवश्यकता नहीं है, तो इस समस्या से संपर्क करने का सबसे अच्छा तरीका क्या है अगर मुझे यादृच्छिक अभिगम की आवश्यकता है? क्या मुझे एक छलावा या कुछ और उपयोग करना चाहिए?
संपादित करें:
- मुझे डायनामिक आकार देने की आवश्यकता है।
- जो नहीं जानते, उनके
vector<bool>
लिए विशेष है ताकि प्रत्येकbool
1 बिट ले। इस प्रकार आप इसे सी-स्टाइल ऐरे में नहीं बदल सकते। - मुझे लगता है कि "रैपर" एक मिथ्या नाम है। मैं कुछ इस तरह सोच रहा था:
बेशक, तब मुझे my_bool
संभावित संरेखण मुद्दों के कारण पढ़ना होगा :(
struct my_bool
{
bool the_bool;
};
vector<my_bool> haha_i_tricked_you;