Узнать есть ли значение 3 функции, а есть ли индекс в QList<int>
не понятно
QList<int> ppc;
ppc[0]=100;
ppc[1]=200;
ppc[2]=300;
ppc[3]=400;
int res = ppc.at(4);
Конечно вылазит окно ошибки, а как узнать есть ли ключ в списке не понятно, должна же быть там функция.
Понятие ключа относится к словарям (dict, map), а у списком, массивов и множеств (list, array, set) доступ к элементам осуществляется через индекс, который начинается от 0 до <размер - 1>
или от 1 до размер
.
Поэтому, чтобы проверить наличие индекса, нужно обратиться к размеру и сравнить размер с индексом.
У QList
для проверки размера есть аж 3 идентичных функции: count, size и length.
Для вашего примера нужно добавить проверку:
int index = 4;
// Для индексации от 0 до n - 1
// А для индексации от 0 до n, проверка изменится на: index <= ppc.size()
if (index < ppc.size()) {
int res = ppc.at(index); // или ppc[index]
}
QList
при неправильном индексе исключение не кидает (так исторически сложилось в Qt), но, например, в java есть ArrayIndexOutOfBoundsException, а у python это IndexError.
Тогда, вместо проверки можно ловить исключение, например тогда код с проверкой изменился бы на что-то такое:
int index = 4;
try {
int res = ppc.at(index);
} catch (IndexError) {
// ignore
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Каким образом производится проверка на истинность j<=(i/j) , ведь по условию выходит, что j всегда будет большеНапример j=2 ; (i/j)=(2/2)=1 --->>> Выходит...
Доброго времени суток, подскажите пожалуйста как убрать появления всех элементов при загрузке страницы в mixitup и что бы сразу активировался...
Всем доброго времени сутокДелаю некое подобие карты и столкнулся с проблемой