0

我一直在编写一些 C++ 代码,但遇到了一个烦人的问题:“标识符 initSol 未定义”!我的项目分为 3 个文件:instance.h,其中包含数据结构(结构)“解决方案”和“问题”coupe.cpp,它使用定义的结构并创建如下方法:

solution * initSol (problem * pb)
{
solution * s;
int * tab, used,i,selected;
    for (i = 0;i<pb->nbTotPcs;i++)
        s->elem[i] = 0;
used = 0; i = 0;selected = 0;
tab = eclatement (pb);
while ((used < pb->tailleBarre) && (i<= pb->nbTotPcs))
{
    used+=tab[i];
    s->elem[i] = 1;
    selected++;
}
s->nbTaillesDem = pb->nbTaillesDem;
s->objVal = used;
s->tailleBarre = pb->tailleBarre;
s->tailleTot = used;
s->nbElem = selected;
return s;
}

main.cpp :这是我调用 initSol 的主文件:

int * tab = (int *) malloc (prblm->nbTotPcs * sizeof(int));
solConst = initSol(prblm);

在这里我遇到了问题

“标识符 initSol 未定义”

4

1 回答 1

0
extern solution * initSol (problem * pb);

应该进入标题,在结构之后

于 2014-04-07T10:53:18.400 回答