Функция «заявить» не может быть решена

0

Я пытаюсь написать простой код для тестирования "create function", но когда я использую assert я получаю эту ошибку: функция assert не может быть разрешена.

Это мой код:

#include "Participant.h"
#include "ParticipantValidator.h"
#include <assert.h>

void testCreateParticipant()
{
    Participant part(1, "Corina", "Marin", 5);
    assert(part.getId() == 1);
    assert(part.getScore() == 5);
    assert(part.getName() == "Corina");
    assert(part.getFamilyName() == "Marin");
}
  • 0
    Почему бы не использовать фреймворк для юнит-тестирования - например, boost_unit или cpp unit
  • 0
    @EdHeal: Возможно, потому что утверждения не только для тестирования, но также полезны в производственных сборках.
Показать ещё 1 комментарий
Теги:
assert

2 ответа

0

Нет функции assert(). Вместо этого это макрос. Вероятно, вы включили неверную версию assert.h или в один из ваших ранее включенных файлов - #define который оценивается как защитник включения в assert.h.

  • Проверьте, какие именно файлы (включая абсурдный путь) вы действительно включили.
  • Попробуйте использовать assert в примере без других файлов заголовков.
0

В C++ вы должны #include <cassert> вместо #include <assert.h>.

  • 0
    Не имеет значения по макросам.
  • 0
    @ 200_success: почему? Укажите причину.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню