Zitat:
	
	
		| 
					Zitat von Shuyin  class Fraction2{
 public:
 
 private:
 int ggT(int a, int b);
 int minimize(void);
 };
 
 int Fraction2::ggT(int a, int b)
 {
 if(b==0)
 return a;
 else return Fraction2::ggT(int b, a % b);
 
 }
 
 ...
 | 
	
 3 Fehler fallen mir sofort auf:
1.) else return Fraction2::ggT(int b, a % b);
Hier ist das "int" zuviel. Du willst doch den "b"-Wert übergeben und nicht definieren, was auch nicht geht beim Funktionsaufruf.
2.) else return Fraction2::ggT(int b, a % b);
Du ruft die Funktion "ggT" als statisch Funktion auf, obwohl sie nicht als static definiert wurde.
3.) In der Kassendefinition (Header-File) wurde keine PUBLIC-Methode angegen, sonden auschlüßlich PRIVATE-Funtionen, die von außen nicht aufrufbar sind.
Sollte dann in etwas so aussehen (Als Inline-Funktion):
class Fraction2{
public:
	int ggT(int a, int b) {
		if(b==0) {
			return a;
                }
		else {
                        return ggT(b, a % b);
                }
        }
};
Test mit:
Fraction2 fr2;
int ggt=fr2.ggt(10,2);