vector<bool با بقیه انواع وکتور فرق داره که این جا توضیح دادم : چرا vector<bool> درست کار نمی کنه ؟
چون نمیشه به آدرس هر خونه دسترسی داشت وکتور بول با cin کار نمیکنه یعنی این هم ارور میده :
vector <bool> a(5);
cin >> a[2];
دلیلشم اینه که vector bool به جای برگردوندن & خونه آرایه مقدار از نوع std::refrence برمیگردونه که cin براش overload ای نداره .
با استفاده از یک متغیر کمکی میشه این مشکل رو حل کرد :
vector <bool> a(5);
bool t;
cin >> t;
a[0] = t;