return sortie ;
}
Certains compilateurs imposent l’attribut const pour les arguments de operator +.
Voici un petit programme d’utilisation de la classe big_int, accompagné du résultat
fourni par son exécution :
/* programme d'essai */
#include "bigint.h"
#include
using namespace std ;
main()
{ big_int n1(12) ; big_int n2(35) ; big_int n3 ;
n3 = n1 + n2 ;
cout << n1 << " + " << n2 << " = " << n3 << "\n" ;
big_int n4 ("1234567890123456789"), n5("9876543210987654321"), n6 ;
n6 = n4 + n5 ;
cout << n4 << " + " << n5 << " = " << n6 << "\n" ;
cout << n6 << " + " << n1 << " = " << n6 + n1 << "\n" ;
n2 = n4 + 5 ; // serait rejetée si operator = n'avait pas argument const
cout << n4 << "+5 = " << n2 << "\n" ;
// ici une expression comme n1 + "123" serait correcte et de type big_int
// ici une expression comme n2 + 5.69 serait correcte et de type big_int
}
12 + 35 = 47
1234567890123456789 + 9876543210987654321 = 11111111101111111110
11111111101111111110 + 12 = 11111111101111111122
1234567890123456789+5 = 1234567890123456794
364
Précédent

- 365/398

Suivant