Если вы используете Visual C ++, то по умолчанию отладочные сборки не будут иметь оптимизации, поэтому это вряд ли будет ошибкой оптимизации.
Я бы предположил, что более вероятным результатом будет то, что символы отладки не являютсяперезагружается правильно.Вы можете проверить это, вызвав серьезную ошибку в функции, и если ошибка выдается, вы ДЕЙСТВИТЕЛЬНО знаете, что код достигается.
Я бы предложил использовать printf для печати отладочных выходных данных.на консоль, а не полагаться только на точки останова.
Тем не менее, задайте вопрос на свой вопрос: есть ли причина, по которой вы не используете Стандартный список библиотек шаблонов ?
Кроме того, я несколько обеспокоен тем, что компилятор даже позволяет вам иметь функцию с возвращаемым значением bool без определенного возврата.На какой уровень предупреждения установлен ваш компилятор?(Я обеспокоен тем, что вы или кто-то другой понизили его, а вы пропускаете ключевые предупреждения)