crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

 
Ответить в данную темуНачать новую тему
> запись значения в вектор
KuvshinoF
  опции профиля:
сообщение 8.3.2024, 10:58
Сообщение #1


Студент
*

Группа: Участник
Сообщений: 74
Регистрация: 25.7.2013
Пользователь №: 3887

Спасибо сказали: 0 раз(а)




Репутация:   0  


Имеется набор 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, все верно

не подходит из-за большого размера вектора указателей. Подскажите еще какие-нибудь попроще способы решения такой задачки.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Алексей1153
  опции профиля:
сообщение 14.9.2024, 13:06
Сообщение #2


фрилансер
******

Группа: Участник
Сообщений: 2941
Регистрация: 19.6.2010
Из: Обливион
Пользователь №: 1822

Спасибо сказали: 215 раз(а)




Репутация:   34  


KuvshinoF, я не очень понял вопрос. Но подозреваю, что тут речь про std::shared_ptr
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0




RSS Текстовая версия Сейчас: 21.11.2024, 19:42