Итак, у меня внутри программы обычная для цикла через вектор объектов (объекты, которые имеют тип I, если это имеет значение):
for(int k = 0; k < objects.size(); k++){ ... }
... и когда я скомпилирую, я получаю это предупреждение:
warning: comparison between signed and unsigned integer expressions
Это имеет смысл, так как я думаю, что size()
для вектора возвращает a size_t
. Но почему это имеет значение? Не является ли определенное количество элементов (или даже блоков памяти) целым числом, которое вы можете подсчитать? Что еще более важно, так как моя программа имеет несколько таких циклов и часто случается с segfault, может ли это быть частью этого?