So..I'm測試與斷言的函數:(pBola1的值是1)是否有可能看到在C++中返回的值?
assert(BomboTest.TreureBola(1)==pBola1);
BomboTest.TreureBola它返回一個隨機數的函數(在這種情況下必須返回1)的一個列表。
cBola* cBombo::TreureBola(int num)
{
int posicio_aleatoria;
posicio_aleatoria= rand() % (num);
return(Boles.TreureElement(posicio_aleatoria));
}
而且TreureElement它返回一個動態列表知道你要提取的元素的位置的元素(在這種情況下返回「Retorn酒店」,這是1)
cBola* cLlista::TreureElement(int posicio)
{
int i;
cBola* recorreLlista;
cBola *retorn;
recorreLlista=primer;
retorn = primer;
i=0;
if (posicio == 0)
{
primer = (*primer).getSeguent();
}
else
{
// Busquem la posició //
while(i < posicio)
{
recorreLlista= retorn;
retorn = (*retorn).getSeguent();
i++;
}
(*recorreLlista).setSeguent((*retorn).getSeguent());
}
numElements--;
return retorn;
}
功能我不知道爲什麼,但斷言失敗。我可以看到TreureElement返回的值,因爲我的指針'retorn',但我無法知道TreureBola返回的值。有什麼方法可以看到TreureBola在調試器中返回的值?
PD:我使用Visual Studio 2010
使用簡化的(變量|函數|類)名稱作爲示例代碼通常是首選,因爲它可以更容易閱讀 – Legionair