8
ทางเลือกสำหรับเวกเตอร์ <bool>
ตามที่ (หวังว่า) เราทุกคนรู้ว่าvector<bool>พังโดยสิ้นเชิงและไม่สามารถถือว่าเป็นอาร์เรย์ C ได้ วิธีที่ดีที่สุดในการรับฟังก์ชันนี้คืออะไร? จนถึงตอนนี้ความคิดที่ฉันคิดคือ: ใช้vector<char>แทนหรือ ใช้คลาส Wrapper และมี vector<bool_wrapper> พวกคุณจัดการกับปัญหานี้อย่างไร? ฉันต้องการc_array()ฟังก์ชั่น เป็นคำถามข้างเคียงถ้าฉันไม่ต้องการc_array()วิธีการใดวิธีที่ดีที่สุดในการแก้ไขปัญหานี้หากฉันต้องการเข้าถึงโดยสุ่ม ฉันควรใช้ deque หรืออย่างอื่น? แก้ไข: ฉันต้องการการปรับขนาดแบบไดนามิก สำหรับผู้ที่ไม่ทราบvector<bool>มีความเชี่ยวชาญเพื่อให้boolใช้เวลา 1 บิต ดังนั้นคุณจึงไม่สามารถแปลงเป็นอาร์เรย์สไตล์ C ได้ ฉันเดาว่า "เสื้อคลุม" เป็นการเรียกชื่อผิด ฉันกำลังคิดบางอย่างเช่นนี้: แน่นอนฉันต้องอ่านmy_boolเนื่องจากปัญหาการจัดตำแหน่งที่เป็นไปได้ :( struct my_bool { bool the_bool; }; vector<my_bool> haha_i_tricked_you;