Имеется набор bool- значений: bool pole_1 = false, pole_2=false, pole_3=false,...; Задача следующая: имея некое входное значение (int Value), записать true в соответствующее pole_x, то есть если Value==1, то pole_1 = true, если Value==2, то pole_2 = true и т.д. Писать прямо так не хочется, так как таких pole_x достаточно много и будет очень уж большой switch или много if-ов. В моем понимании надо все эти pole_x последовательно записать в некий массив (вектор) и затем как-то, задавая true Value-му элементу вектора, задать true его полю pole_x. Рабочий вариант int Value = 1; QVector <bool *> MyVector; bool pole_1 = false; MyVector.append(&pole_1); *MyVector[Value] = true; qDebug() << "pole_1=" << pole_1; // true, все верно
не подходит из-за большого размера вектора указателей. Подскажите еще какие-нибудь попроще способы решения такой задачки.
|