私はいくつかの 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は定義されていません」