Ue1
Erweitern Sie das Programm aus Uebung 9 Aufgabe 1 wie folgt:
1. Erzeugen Sie einen Programmabsturz durch Verwenden
von Kopien.
2. Beheben Sie das Problem.
3. Erzeugen Sie eine logisch falsche Situation durch
Verwendung der Zuweisung.
4. Beheben Sie das Problem.
5. Vervollständigen Sie die Klasse so, daß
Sie als Basisklasse geeignet wäre.
Ue2
Erstellen Sie ein Funktionstemplate, das das Minimum von zwei Werten
zurückgibt.
Wenden Sie die Funktion sowohl auf int und double als auch auf
Instanzen von
Modulo5 (Klasse erstellen!) an. Testen Sie verschiedene Aufrufvarianten
.
Ue3
Welche Ausgaben erzeugt das folgende Programm?
(Anmerkung: Der Einfachheit halber sind alle Elemente public!)
Überprüfen Sie das Programm im Hinblick auf Speicherlecks
und fügen Sie gegebenenfalls
erforderliche Änderungen ein.
class A{
public:
int i;
A():i(5){}
};
class B{
public:
int j;
B():j(6){}
};
class C : public B{
public:
int* ip;
A a;
C(){ip=new int(7);}
void show(){cout<<" i: "<<a.i<<" j:
"<<j<<" *ip: "<<*ip<<endl;}
};
void main(){
C* cp = new C;
(*cp).show();
(*cp).a.i=55;
(*cp).j=66;
*(*cp).ip=77;
C c2=(*cp);
delete cp;
B* bp = new C;
delete bp;
c2.show();
}
*/