{ if (this != &v) // on ne fait rien pour a=a
{ delete adr ;
adr = new int [nelem = v.nelem] ;
int i ;
for (i=0 ; i
adr[i] = v.adr[i] ;
}
return * this ;
}
int & vect::operator [] (int i) // surdéfinition opérateur []
{ return adr[i] ;
}
int vect::operator [] (int i) const // surdéfinition opérateur [] pour cst
{ return adr[i] ;
}
ostream & operator << (ostream & sortie, vect & v)
{ sortie << "<" ;
int i ;
for (i=0 ; i
sortie << ">" ;
return sortie ;
}
À titre indicatif, voici un petit programme utilisant la classe vect, accompagné du
résultat fourni par son exécution :
#include "vect.h"
#include
using namespace std ;
main()
{ int i ;
vect v1(5), v2(10) ;
for (i=0 ; i<5 ; i++) v1[i] = i ;
cout << "v1 = " << v1 << "\n" ;
for (i=0 ; i<10 ; i++) v2[i] = i*i ;
cout << "v2 = " << v2 << "\n" ;
v1 = v2 ;
cout << "v1 = " << v1 << "\n" ;
vect v3 = v1 ;
cout << "v3 = " << v3 << "\n" ;
vect v4 = v2 ;
cout << "v4 = " << v4 << "\n" ;
// const vect w(3) ; w[2] = 5 ; // conduit bien à erreur compilation
}
v1 = <0 1 2 3 4 >
v2 = <0 1 4 9 16 25 36 49 64 81 >
v1 = <0 1 4 9 16 25 36 49 64 81 >
v3 = <0 1 4 9 16 25 36 49 64 81 >
v4 = <0 1 4 9 16 25 36 49 64 81 >
354
{ delete adr ;
adr = new int [nelem = v.nelem] ;
int i ;
for (i=0 ; i
}
return * this ;
}
int & vect::operator [] (int i) // surdéfinition opérateur []
{ return adr[i] ;
}
int vect::operator [] (int i) const // surdéfinition opérateur [] pour cst
{ return adr[i] ;
}
ostream & operator << (ostream & sortie, vect & v)
{ sortie << "<" ;
int i ;
for (i=0 ; i
return sortie ;
}
À titre indicatif, voici un petit programme utilisant la classe vect, accompagné du
résultat fourni par son exécution :
#include "vect.h"
#include
using namespace std ;
main()
{ int i ;
vect v1(5), v2(10) ;
for (i=0 ; i<5 ; i++) v1[i] = i ;
cout << "v1 = " << v1 << "\n" ;
for (i=0 ; i<10 ; i++) v2[i] = i*i ;
cout << "v2 = " << v2 << "\n" ;
v1 = v2 ;
cout << "v1 = " << v1 << "\n" ;
vect v3 = v1 ;
cout << "v3 = " << v3 << "\n" ;
vect v4 = v2 ;
cout << "v4 = " << v4 << "\n" ;
// const vect w(3) ; w[2] = 5 ; // conduit bien à erreur compilation
}
v1 = <0 1 2 3 4 >
v2 = <0 1 4 9 16 25 36 49 64 81 >
v1 = <0 1 4 9 16 25 36 49 64 81 >
v3 = <0 1 4 9 16 25 36 49 64 81 >
v4 = <0 1 4 9 16 25 36 49 64 81 >
354
