Bonjour à vous,
Me voila de nouveau sur le forum pour un petit soucis que je n'arrive pas à résoudre et je sais que sa provient de la définition de la surcharge opérateur<<, voici mon code:
header2.cpp:
Source2.cpp:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 #include <iostream> using namespace std; class Point3D { protected: double x, y, z; public: //Constructeur par defaut Point3D() : x(0.0), y(0.0), z(0.0) {} //Constructeur par 3 coordonnées Point3D(double x, double y, double z) : x(x), y(y), z(z) {} //Methode de comparaison bool operator==(const Point3D&) const; //Methode d'acces en lecture double get_x() { return x; } double get_y() { return y; } double get_z() { return z; } }; ostream& operator<<(ostream&, const Point3D&);
main.cpp:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14 #include "Header2.h" bool Point3D::operator==(const Point3D& autre) const { return (x==autre.x) && (y==autre.y) && (z==autre.z); } ostream& operator<<(ostream& sortie, const Point3D& p) { sortie << '( ' << p.get_x() << ", " << p.get_y() << ", " << p.get_z() << ' )'; return sortie; }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 #include "Header2.h" #include "Source2.cpp" int main() { Point3D p1(1.0, 3.5, -4.2); system("pause"); return 0; }
Partager