• Keine Ergebnisse gefunden

sbieleck@studs.math.uni-wuppertal.de WS2011/2012–¨Ubungsblatt331.Oktober2011Abgabe:bis7.November201112Uhran GenerischeProgrammierung(SpezielleKapitelderpraktischenInformatik)

N/A
N/A
Protected

Academic year: 2022

Aktie "sbieleck@studs.math.uni-wuppertal.de WS2011/2012–¨Ubungsblatt331.Oktober2011Abgabe:bis7.November201112Uhran GenerischeProgrammierung(SpezielleKapitelderpraktischenInformatik)"

Copied!
2
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 3 31. Oktober 2011

Abgabe: bis 7. November 2011 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. TypeTraits

Wozu werden im C++11 in Abschnitt 20.9UnaryTypeTraitsund wozu BinaryTypeTraits benutzt?

Lesen Sie dazu insbesondere

http://publib.boulder.ibm.com/infocenter/comphelp/v9v111/index.jsp?topic=/com.ibm.xlcpp9.aix.doc/standlib/header type traits.htm

undhttp://dotnet-snippets.de/dns/einfaches-beispiel-fuer-traits-SID877.aspx sowie Seite 12ff. in

http://artins.org/ben/programming/mactechgrp-artin-cpp-type-traits.pdf.

Aufgabe 2. A C++0c Overview

Lesen Sie in Bjarne Stroustrups Artikel

http://www.research.ibm.com/arl/seminar/media/stroustrup.pdf alles sich auf den Einsatz generischer Konstrukte Beziehende und stel- len Sie es in eigenen Worten kurz dar. Was wird in C++11 typsicherer als in der Vorg¨angerversion?

Aufgabe 3. geomMittel2 Schreiben Sie eine Template-Funktion template <typename T1, typename T2>

double geomMittel2(const T1& a, const T2& b);

zur Berechnung des geometrischen Mittels

(http://de.wikipedia.org/wiki/Geometrisches Mittel) von zwei Parametern eventuell unterschiedlichen Typs.

Welchen Requirements sollten T1 und T2 gen¨ugen, um eine geeignete Instanz von geomMittel2 erzeugen zu k¨onnen?

1

(2)

Schreiben Sie eine analog zu der Dokumentation der STL-Algorithmen (http://www.sgi.com/tech/stl/) aufgebaute Dokumentation Ihres ge- nerischen Algorithmus.

Aufgabe 4. STL reverse()

Schreiben Sie ein Testprogramm, das die vielseitige Anwendbarkeit des STL-Algorithmus reverse() f¨ur m¨oglichst viele Datentypen demons- triert und testet.

2

Referenzen

ÄHNLICHE DOKUMENTE

Schreiben Sie eine analog zu der Dokumentation der STL-Algorithmen (http://www.sgi.com/tech/stl/) aufgebaute Dokumentation Ihres ge- nerischen Algorithmus.

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

Diskutieren Sie die Ziele des neuen C++-Standards http://www.artima.com/cppsource/cpp0x.html insbesondere im Hinblick auf templates.

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

Wozu werden im C++-Draft N3126 in Abschnitt 20.7 UnaryTypeTraits und wozu BinaryTypeTraits benutzt. Lesen Sie

Warum kann in C++ der Typ des Funktionsergebnisses nicht zur Un- terscheidung weiterer ¨uberladener Funktionsvarianten benutzt werden. Welche Abk¨urzungen werden im GNU3-Mangling

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

Demonstrieren Sie static assert() in einem Beispielprogramm, das nur compiliert werden kann, wenn Ihre C++-Sprachumgebung einen 4 Byte langen int-Typ besitzt. Benutzen Sie dabei die