Такие `== true` в конце как правило опускают. Вообще мне не очень нравится, что вы используете return коды. Я бы лучше возвращал требуемое значение, а в том случает когда ряд некорректен, бросали и обрабатывал исключения. Это более грамотный подход для С++. Как минимум, интерфейс становится чище.