C++-Programmierung/ Vorlagen
<--zurück zum Buch
Hier sind alle Vorlagen für das Buch C++-Programmierung untergebracht und es wird an neuen Entwürfen gearbeitet bzw. über diese diskutiert. Bitte helft mit, die Vorlagen zu verbessern.--FreakFlo
Einleitung
BearbeitenDa wir gern die Kontrolle über die in diesem Buch verwendeten Vorlagen behalten möchten, stehen alle Vorlagen im Namensraum des Buches. Um eine Vorlage aus dem Namensraum eines Buches zu verwenden, ist es nötig, den kompletten Namen anzugeben und ihm noch einen Doppelpunkt voranzustellen. Lediglich die Inline-Quellcode-Vorlage ist global und somit im Fließtext nicht störend.
Liste
BearbeitenHier sind alle Vorlagen einfach aufgelistet, falls Sie nur auf der Suche nach dem Namen sind. Lassen Sie sich bitte nicht von den verschiedenen Versionen für HTML und PDF stören, für die Verwendung im Buch müssen Sie die verschiedenen Versionen nicht beachten. Sie sind hier nur verlinkt, falls Sie sich den Aufbau ansehen möchten.
Bucheigene Vorlagen:
- :C++-Programmierung/ Vorlage:Code
- :C++-Programmierung/ Vorlage:Syntax
- :C++-Programmierung/ Vorlage:Hinweis
- :C++-Programmierung/ Vorlage:Tipp
- :C++-Programmierung/ Vorlage:Später im Buch
- :C++-Programmierung/ Vorlage:Nicht näher beschrieben
- :C++-Programmierung/ Vorlage:Anderes Buch
- :C++-Programmierung/ Vorlage:Navigation
- :C++-Programmierung/ Vorlage:Kapitelanhang
- :C++-Programmierung/ Vorlage:Frage
- :C++-Programmierung/ Vorlage:Aufgabe
- :C++-Programmierung/ Vorlage:Buchinterner Link
- :C++-Programmierung/ Vorlage:Abschnitt
- :C++-Programmierung/ Vorlage:Gesamter Abschnitt
Globale Vorlagen
Tipp und Hinweis
BearbeitenWenn ein Tipp oder ein Hinweis (auf Gefahren) gegeben werden soll, so geschieht dies in einer sogenannten Box. Diese Box wird durch eine Vorlage realisiert. Wie Sie die Vorlagen verwenden, erfahren Sie gleich, lesen Sie bitte auch den Inhalt der Vorschauboxen, da sie auch wichtige Tipps und Hinweise enthalten.
Tipp
BearbeitenTipps werden verwendet, wenn der Leser auf etwas Nützliches aufmerksam gemacht werden soll.
Quelltextvorschau:
{{:C++-Programmierung/ Vorlage:Tipp| Ihr Text für den Tipp. Es ist möglich, die ''Wikiformatierung'' zu benutzen. Auch weitere Vorlagen könnten beliebig verschachtelt werden. }}
So sieht's aus:
Ihr Text für den Tipp. Es ist möglich, die Wikiformatierung zu benutzen.
Auch weitere Vorlagen könnten beliebig verschachtelt werden.
Hinweis
BearbeitenHinweise werden verwendet, wenn der Leser auf einen Stolperstein aufmerksam gemacht werden soll.
Quelltextvorschau:
{{:C++-Programmierung/ Vorlage:Hinweis| 1= Achtung, das ist ein Hinweis an alle Autoren dieses Buches: Wenn Sie innerhalb einer Vorlage ein <code>=</code> verwenden, müssen Sie, wie auch in diesem Hinweis, ein <code>1=</code> (Eins-Istgleich) voranstellen. Sonst wird alles vor Ihrem <code>=</code> im Text als Parametername interpretiert. Die Zeilenumbrüche in diesem Beispiel wurden übrigens eingefügt, um ein ellenlanges Horizontalscrolling bei der Quelltextvorschau zu verhindern. }}
So sieht's aus:
Achtung, das ist ein Hinweis an alle Autoren dieses Buches: Wenn Sie innerhalb
einer Vorlage ein =
verwenden, müssen Sie, wie auch in diesem Hinweis,
ein 1=
(Eins-Istgleich) voranstellen. Sonst wird alles vor Ihrem
=
im Text als Parametername interpretiert.
Die Zeilenumbrüche in diesem Beispiel wurden übrigens eingefügt, um ein ellenlanges Horizontalscrolling bei der Quelltextvorschau zu verhindern.
Später, woanders und nicht
BearbeitenWir haben drei Vorlagen, die verwendet werden, wenn ein Thema an dieser Stelle (dort wo die Vorlage verwendet wird) nicht erklärt ist.
Später im Buch
BearbeitenQuelltextvorschau:
{{:C++-Programmierung/ Vorlage:Später im Buch| Diese Vorlage verwenden wir, wenn ein Thema später noch ausführlich behandelt wird. Die Vorlage sollte immer einen Verweis auf die Seite(n) enthalten, auf denen das Thema beschrieben steht. Wenn ein Thema noch innerhalb eines Kapitels (der Seite die Sie gerade editieren) behandelt wird, so reicht ein einfacher Hinweis im Text. Die Vorlage muss ja nicht unnötig Platz wegnehmen, wenn es sowieso nur noch ein paar Zeilen bis zur Beschreibung sind. }}
So sieht's aus:
Diese Vorlage verwenden wir, wenn ein Thema später noch ausführlich behandelt wird. Die Vorlage sollte immer einen Verweis auf die Seite(n) enthalten, auf denen das Thema beschrieben steht. Wenn ein Thema noch innerhalb eines Kapitels (der Seite die Sie grade editieren) behandelt wird, so reich ein einfacher Hinweis im Text. Die Vorlage muss ja nicht unnötig Platz wegnehmen, wenn es sowieso nur noch ein paar Zeilen bis zur Beschreibung sind.
Anderes Buch
BearbeitenQuelltextvorschau:
{{:C++-Programmierung/ Vorlage:Anderes Buch| Diese Vorlage kommt zum Einsatz, wenn ein Thema nicht innerhalb des Buches behandelt wird, aber bereits ein Wikibuch zum Thema existiert. Ein Hinweis auf den Fortschritt des entsprechenden Buches sollte gegeben werden, damit der Leser sich nicht ärgert, wenn er auf den Buchlink klickt und dort nur drei halbfertige Seiten vorfindet. }}
So sieht's aus:
Diese Vorlage kommt zum Einsatz, wenn ein Thema nicht innerhalb des Buches behandelt wird, aber bereits ein Wikibuch zum Thema existiert. Ein Hinweis auf den Fortschritt des entsprechenden Buches sollte gegeben werden, damit der Leser sich nicht ärgert, wenn er auf den Buchlink klickt und dort nur drei halbfertige Seiten vorfindet.
Nicht näher beschrieben
BearbeitenQuelltextvorschau:
{{:C++-Programmierung/ Vorlage:Nicht näher beschrieben| Wenn alle Stricke reißen und das Thema weder in diesem noch in einem anderen Wikibuch beschrieben ist, dann verwenden Sie diese Vorlage. Natürlich ist es möglich, den Leser dann auf alternative Adressen im Web aufmerksam zu machen, aber mit dieser Möglichkeit sollte sparsam verfahren werden. Außerdem sollten externe Links immer vollständig in Textform angegeben werden, damit auch ein Leser, der das Buch gedruckt hat, den Link nachvollziehen kann. }}
So sieht's aus:
Wenn alle Stricke reißen und das Thema weder in diesem noch in einem anderen Wikibuch beschrieben ist, dann verwenden Sie diese Vorlage. Natürlich ist es möglich, den Leser dann auf alternative Adressen im Web aufmerksam zu machen, aber mit dieser Möglichkeit sollte sparsam verfahren werden. Außerdem sollten externe Links immer vollständig in Textform angegeben werden, damit auch ein Leser, der das Buch gedruckt hat, den Link nachvollziehen kann.
Navigation
BearbeitenUnsere Navigationsvorlage steht am Anfang und am Ende jedes Kapitels. Sie wird folgendermaßen eingebunden:
Quelltextvorschau:
<noinclude> {{:C++-Programmierung/ Vorlage:Navigation}} </noinclude>
Sie erwartet keine Parameter, da die nötigen Verlinkungen anhand des Seitennamens ermittelt werden können. Dies hat, abgesehen von der einfachen Einbindung, den Vorteil, das im Inhaltsverzeichnis problemlos die Kapitelreihenfolge geändert, Kapitel hinzugefügt oder gelöscht, umbenannt, zusammengeführt oder aufgeteilt werden können, ohne das „umliegende“ Seiten geändert werden müssen.
Kapitelanhang
BearbeitenAm Ende jedes Kapitels, sollte die Vorlage "Kapitelanhang" eingebunden werden. Ohne Parameter wird nichts angezeigt, aber der Soll-Zustand eines Kapitels besagt, dass es (wenn möglich) durch eine kurze Zusammenfassung und ein paar Fragen und Aufgaben zum Üben beendet werden sollte.
Entsprechend sind die Parameter der Vorlage:
Zusammenfassung=
Eine kurze Zusammenfassung des KapitelsFragen=
Eine oder mehrere FragenAufgaben=
Eine oder mehrere Aufgaben
Quelltextvorschau:
{{:C++-Programmierung/ Vorlage:Kapitelanhang |Zusammenfassung= Das ist die Zusammenfassung zum Kapitel X. |Fragen= Hier stehen Fragen... |Aufgaben= Hier sind die Übungsaufgaben... }}
So sieht's aus:
Im Anhang zu diesem Kapitel finden Sie:
- Eine Zusammenfassung zu diesem Kapitel.
- Fragen und die dazugehörigen Antworten.
- Aufgaben und zugehörige Musterlösungen.
Hier sind die Übungsaufgaben...
Auch für Fragen und Aufgaben gibt es eine Vorlage. Diese wird einfach in die Kapitelanhang-Vorlage verschachtelt:
Quelltextvorschau:
{{:C++-Programmierung/ Vorlage:Kapitelanhang |Zusammenfassung= Das ist die Zusammenfassung zum Kapitel X. |Fragen= {{:C++-Programmierung/ Vorlage:Frage |Nummer=1 |Frage=Wie viele Fragen werden hier gestellte? |Antwort=2 }} {{:C++-Programmierung/ Vorlage:Frage |Nummer=2 |Frage=Ist diese Beschreibung verständlich? |Antwort= Das müssen Sie wissen. Wenn nicht schreiben, Sie bitte auf die Diskussionsseite, was unklar ist. }} |Aufgaben= {{:C++-Programmierung/ Vorlage:Frage |Nummer=1 |Aufgabe=Helfen Sie mit Wikibooks zu verbessern. |Lösung= Wenn Sie das lesen sind Sie wahrscheinlich schon dabei, daher wird an dieser Stelle darauf verzichtet, eine Erklärung zu schreiben, wie Sie dies tun könnten. }} }}
So sieht's aus:
Im Anhang zu diesem Kapitel finden Sie:
- Eine Zusammenfassung zu diesem Kapitel.
- Fragen und die dazugehörigen Antworten.
- Aufgaben und zugehörige Musterlösungen.
Das müssen Sie wissen, wenn nicht schreiben Sie bitte auf die Diskussionsseite was unklar ist.
Das ist nicht sehr übersichtlich, aber immer noch die einfachste Möglichkeit und sobald Sie das Prinzip dahinter verstanden haben, ist es leicht.
Zusammengefasst:
:C++-Programmierung/ Vorlage:Kapitelanhang
Zusammenfassung=
Eine kurze Zusammenfassung des KapitelsFragen=
Eine oder mehrere Fragen (Vorlage::C++-Programmierung/ Vorlage:Frage
)Aufgaben=
Eine oder mehrere Aufgaben (Vorlage::C++-Programmierung/ Vorlage:Aufgabe
)
:C++-Programmierung/ Vorlage:Frage
Nummer=
Die wievielte Frage es istFrage=
Ihre FrageAntwort=
Ihre Antwort darauf
:C++-Programmierung/ Vorlage:Aufgabe
Nummer=
Die wievielte Aufgabe es istFrage=
Ihre AufgabeLösung=
Eine Musterlösung
Quelltext
BearbeitenUm Quelltext darzustellen, verwenden wir die Vorlage „C++-Programmierung/ Vorlage:Code“. Sie ist etwas platzsparender als die regalweite Code-Vorlage, ähnelt ihr aber sowohl vom aussehen, als auch von den Parametern her.
{{:C++-Programmierung/ Vorlage:Code |code= #include <iostream> using namespace std; int main(){ cout << "Hallo Welt\n"; } }}
Parameter der immer übergeben wird:
code= Ihr Quelltext
Optionale Parameter:
- output
- kopf
- fuss
- valid (Wahrheitswert)
- error (Wahrheitswert)
Leider ist die Syntaxhervorhebung für C++ noch recht fehlerhaft, aber das wird sich mit der Zeit hoffentlich bessern.
{{:C++-Programmierung/ Vorlage:Code |kopf=Beispiel mit Kopfzeile und Ausgabe |code= #include <iostream> int main(){ std::cout << "Hallo Welt\n"; } |output= Hallo Welt }}
{{:C++-Programmierung/ Vorlage:Code |kopf=So sollte man das besser nicht machen |error=true |code= #include <iostream> int main(){ double x = 5 / 2; // Integer-Division std::cout << x << std::endl; } |output= 2 }}
{{:C++-Programmierung/ Vorlage:Code |valid=true |code= #include <iostream> int main(){ double x = 5.0 / 2; // Gleitkomma-Division std::cout << x << std::endl; } |output= 2.5 |fuss=... das ist besser (dieser Text steht in der Fußzeile) }}
Quelltext im Fließtext
BearbeitenWenn Sie C++-Code im Fließtext schreiben wollen, dann benutzen Sie die cpp-Vorlage: {{cpp|int main(){std::cout << "quatsch" << std::endl;}}
wird zu int main(){std::cout << "quatsch" << std::endl;
.
Zu Beachten ist bei den Vorlagen, dass die Oder-Operatoren (| und ||) durch die Vorlagen {{!}} und {{!!}} ersetzt werden müssen. Im Fließtext ist weiterhin darauf zu achten, das wenn der Quellcode ein „=“ enthält durch ein „1=“ eingeleitet werden muss. (Beispiel: {{cpp|1=c = a + b}}
)
Syntaxbeschreibung
BearbeitenDiese Vorlage entspricht im wesentlichen der Code-Vorlage. Sie erwartet nur den Parameter „code“. Um etwas als Nicht-C++-Code auszuzeichnen wird es in «Nicht-C++-Code» gesetzt. Optionale Bestandteile werden in »optional« gesetzt.
Beispiel:
{{:C++-Programmierung/ Vorlage:Syntax |code= switch(«Variable»){ case «Wert»: «Anweisung» «...» »break;« «...» default: // Wird ausgeführt, falls die Variable keinem der Werte entsprach «Anweisung» «...» } }}
Buchinterne Links
BearbeitenDa das Buch entweder Kapitelweise oder Abschnittsweise gelesen werden kann, ist es notwendig, dass Buchinterne Links sich entsprechend der verwendeten Version verhalten. Dies wird mithilfe einer Vorlage realisiert. Prinzipiell ist das Buch in Abschnitte aufgeteilt, diese Bestehen wiederum aus mehreren Kapiteln und die Kapitel haben meist mehrere Unterüberschriften. Entsprechend erwartet die Vorlage die folgenden Parameter:
- Text (optional) – Text, der angezeigt werden soll. Falls nicht vorhanden wird Überschrift benutzt, ist diese nicht vorhanden wird Kapitel benutzt, ist dieses nicht vorhanden wird Abschnitt genutzt.
- Abschnitt (zwingend) – Abschnitt auf den Verlinkt werden soll
- Kapitel (optional) – Kapitel auf das Verlinkt werden soll
- Überschrift (optional) – Überschrift innerhalb eines Kapitels
Leider kann es vorkommen, das innerhalb eines Kapitels zwei oder mehr Überschriften gleich lauten. Der MediaWiki-Parser zählt in diesem Fall eine laufende Nummer hoch, die, durch Unterstrich getrennt, an die ID der zu verlinkenden Überschrift angehängt wird. Diese ID muss nötigenfalls über den Parameter „Kapitelzusatz“ angegeben werden. Bei abschnittsweisem lesen ist das Problem sogar noch größer, denn dort werden die Überschriften aller Kapitel auf diese Weise durchnummeriert. In diesem Fall heißt der Parameter „Abschnittszusatz“. Falls ein vor Ihnen erstellter Link auf die richtige Seite, aber zur falschen Überschrift verweist überprüfen Sie, ob eventuell einer oder beide Parameter zusätzlich angegeben werden müssen. Falls Sie damit Schwierigkeiten haben, hinterlassen Sie mir einfach einen Hinweis auf meiner Diskussionsseite, dann kümmere ich mich darum. ;)
Einige Beispiel (von dieser Seite aus verhält sich die Vorlage, als würden Sie das Buch abschnittsweise Lesen):
* {{:C++-Programmierung/ Vorlage:Buchinterner Link|Abschnitt=Einführung zum Buch}} * {{:C++-Programmierung/ Vorlage:Buchinterner Link|Abschnitt=Einführung in C++|Kapitel=Einfache Ein- und Ausgabe}} * {{:C++-Programmierung/ Vorlage:Buchinterner Link|Abschnitt=Einführung in C++|Kapitel=Variablen, Konstanten und ihre Datentypen|Überschrift=Variablen}} * {{:C++-Programmierung/ Vorlage:Buchinterner Link|Abschnitt=Einführung in C++|Kapitel=Zusammenfassung|Überschrift=Variablen|Abschnittszusatz=2}} * {{:C++-Programmierung/ Vorlage:Buchinterner Link|Abschnitt=Einführung in C++|Text=Ich zeige auf einen Abschnitt}}
Abschnitt
BearbeitenDie Vorlage Abschnitt werden Sie selten verwenden, daher ist Sie hier nicht genau erklärt. Wenn Sie dennoch eine Beschreibung benötigen, finden Sie diese auf C++-Programmierung/ Vorlage:Abschnitt.
Gesamter Abschnitt
BearbeitenJeder Abschnitt stellt eine Seite zur Verfügung, auf der alle Kapitel dieses Abschnitts stehen. Auf diesen Seiten wird eine andere Navigationsvorlage verwendet. Eine weitere Vorlage erstellt aus den einzelnen Kapiteln den Text der Seite. Auch diese beiden Vorlagen werden Sie mit höchster Wahrscheinlichkeit nie verwenden, da der Hauptautor das erstellen dieser Seiten übernimmt. Falls doch nötig, finden Sie eine Beschreibung auf den entsprechenden Vorlagenseiten.