• Keine Ergebnisse gefunden

sbieleck@studs.math.uni-wuppertal.de WS2011/2012–¨Ubungsblatt119.Januar2012Abgabe:bis16.Januar201212Uhran GenerischeProgrammierung(SpezielleKapitelderpraktischenInformatik)

N/A
N/A
Protected

Academic year: 2022

Aktie "sbieleck@studs.math.uni-wuppertal.de WS2011/2012–¨Ubungsblatt119.Januar2012Abgabe:bis16.Januar201212Uhran GenerischeProgrammierung(SpezielleKapitelderpraktischenInformatik)"

Copied!
1
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

BERGISCHE UNIVERSIT ¨ AT WUPPERTAL

GAUSS-STRASSE 20 42119 WUPPERTAL TELEFAX (0202) 439-2901 TELEFON (0202) 439-0 WWW www.uni-wuppertal.de

Fachbereich C

MATHEMATIK UND NATURWISSENSCHAFTEN Fachgruppe Mathematik und Informatik

Generische Programmierung

(Spezielle Kapitel der praktischen Informatik)

WS 2011/2012 – ¨ Ubungsblatt 11 9. Januar 2012

Abgabe: bis 16. Januar 2012 12 Uhr an sbieleck@studs.math.uni-wuppertal.de

Prof. Dr. Hans-J¨urgen Buhl Praktische Informatik / Numerik

E-Mail:Hans-Juergen.Buhl@math.uni-wuppertal.de

WWW:http://www.math.uni-wuppertal.de/buhl

Aufgabe 1. Vorbedingungen in Templates

Demonstrieren Sie die Benutzung von static assert(), um die Template-Metafunktion fact (Aufgabe 3 von ¨Ubungsblatt 8) vor dem Aufruf mit einem negativen Templateparameter-Wert zu sch¨utzen. Tes- ten Sie!

Warum nennt man fact in diesem Zusammenhang eine Metafunktion und nicht einfach eine Funktion?

Aufgabe 2. Vorbedingungen in Templates: Fortsetzung

Demonstrieren Sie die Benutzung von static assert(), um die Template-Metafunktion template<int n, int m> struct cpower::result gegen unsinnige Parameter abzusichern.

Aufgabe 3. Vorbedingungen in Templates: Fortsetzung 2

Demonstrieren Sie die Benutzung von static assert(), um die Template-Metafunktion template <unsigned long N> struct binary::value gegen einen unsinnigen Parameter abzusichern.

Aufgabe 4. N-Queens Lesen Sie

http://accu.org/index.php/journals/424

und referieren Sie die Anwendung der Metaprogrammierung f¨ur das N-Queens-Problem.

Testen Sie das Programm selbst aus. Was ist das Hauptproblem des Einsatzes von Compiletime-Metaprogrammen?

1

Referenzen

ÄHNLICHE DOKUMENTE

A face object is represented by the appearance of the eyes, nose and mouth, and a shape model that code how these parts can deform.. A body object is represented by the appearance of

Demonstrieren Sie anlog, wie Sie die Template-Metafunktion template &lt;unsigned long N&gt; struct binary::value gegen einen unsinnigen

Demonstrieren Sie anlog, wie Sie die Template-Metafunktion template &lt;unsigned long N&gt; struct binary::value gegen einen unsinnigen

Demonstrieren Sie analog, wie Sie die Template-Metafunktion template&lt;int n, int m&gt; struct cpower::result gegen unsinnige Parameter absichern k¨onnen.

Schreiben Sie kurze Benutzungsanleitungen (Fallstudien) ¨uber den Um- gang mit statischen Bibliotheken: Hinzuf¨ugen einer neuen Objektdatei, ersetzen einer aktualisierten

Welcher ge- nerische Algorithmus ben¨otigt einen dieses Requirement erf¨ ullenden Templateparameter.

Demonstrieren Sie die Benutzung von static assert(), um die Template-Metafunktion template &lt;unsigned long N&gt; struct binary::value gegen einen unsinnigen Parameter

In part 3 of the 3-D skills model the tutor encourages the student to repeat the corrected auscultation component, without prompting, but offering corrective coaching