功能“断言”无法解决

时间:2014-04-06 06:09:30

标签: c++ 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");
}

2 个答案:

答案 0 :(得分:0)

没有功能assert()。这是一个宏而不是。您可能包含了错误的assert.h版本,或者您之前包含的文件之一是#define,它在assert.h中被评估为包含保护。

  • 检查您确实包含的包含文件(包括absulote路径)。
  • 尝试在没有其他头文件的示例中使用assert

答案 1 :(得分:0)

在C ++中,您应该#include <cassert>而不是#include <assert.h>