J'essaye de surcharger l'opérateur d'incrément de suffixe en tant que fonction de membre pour une classe qui stocke de grands nombres sous la forme d'un tableau d'ints. Mais il continue à être retourné à 0. Des conseils sur pourquoi cela ne fonctionne pas?Opérateur d'incrémentation de postfix de surcharge
Ceci est une question de devoirs, donc je voudrais plus d'un conseil que du code direct. Merci.
Les données membre ressemble:
largeInt = new int[maxSize];
int maxSize, currentSize;
Où currentSize est une variable de suivi utilisé pour garder la trace de la taille du tableau est actuellement.
Et mon code est:
La fonction Load met int au premier endroit dans le tableau et déplace tout le reste plus.
/* postfix*/
NewInt& NewInt::operator++(int nothing)
{
int count = 1;
largeInt[currentSize - count] += 1;
while(largeInt[currentSize - count] > 9)
{
if(currentSize - count - 1 < 0)
{
firstVar = true;
Load(1);
}
else
largeInt[currentSize - count - 1] += 1;
count++;
}
return *this;
}
vous affichez LargeInt mais le code réel utilise 'number'. Est-ce que le numéro une référence à LargeInt – Chubsdad
ne nomme pas le paramètre de l'opérateur ++; C'est une bonne pratique – Chubsdad
ouais je l'ai changé à largeInt, il est correct dans mon programme, juste un peu fatigué, copié et collé à partir d'un programme de test. fixé. – dubyaa