01 // Typkonvertierungs-Operator
02 // Datei: tkoper01.cpp
04 #include <iostream.h>
05
06 class ratio
07 {
08 int zaehler, nenner;
09 public:
10 ratio (int z = 0,
int n = 1)
11 {zaehler = z, nenner = n;}
12 operator double (); // Konvertierung
zu double
13 };
14
15 ratio::operator double () // Konvert.methode
16 {
17
return double (zaehler) / double (nenner);
18 }
19 // Testrahmen
20 int main()
21
{
22 ratio A(1,2);
23 cout<<"\nErgebnis : "<<double(A)<<endl; // fu.
24 cout<<"Mit
cast: " <<(double)A<<endl; // konv.
25 if (A) // implizit
26 cout << "Objekt
nicht 0" << endl;
27 else
28 cout << "Objekt ist 0" << endl;
29
30 return
0;
31 }
|
Bild 16-6 Konvertierungs-Operator
|