..
Zu den Besonderheiten des C + + im Vergleich zu anderen Programmiersprachen, sicher identifizieren die Möglichkeit einer Ausweitung der Nutzung des Mechanismus auch überladene Operatoren, zusätzlich zu den Funktionen oder Methoden der Klasse.
Kurz gesagt, ist die "Überlastung in der Regel einen Mechanismus zur Unterscheidung Funktionen mit dem gleichen Namen (und in der Regel eine ähnliche, aber nicht identisch), basierend auf der Anzahl und Art der Parameter geliefert.
Zum Beispiel, definiere ich zwei Funktionen der Presse, eine generische (ohne Parameter), die eine vorgegebene Menge von Informationen Ausgänge, und eine andere, in denen der Benutzer durch Einstellen der Parameter entsprechend festlegen können, welche Informationen von Interesse ist und damit gedruckt werden.
Die Druckfunktion ist daher in diesem Fall neu definiert, um verschiedene Informationen vom Benutzer eingegebene anzupassen. Auch die C + + können Sie definieren Operatoren: denken wir an die mathematischen Operatoren "+", "-", "*" und "/". Es mag interessant sein und praktisch, zum Beispiel definieren die "+"-Operator angewendet wird, wenn nicht Zahlen, sondern Zeichenketten (Sätze von alphanumerischen Zeichen). Im letzteren Fall entspricht die "Summe", um die Verkettung von Zeichenfolgen, zum Beispiel, wenn die Zeichenfolge "Hallo" und b in der Zeichenfolge "Welt", den Betrieb
String c = a + bzur Schaffung des Strings c, deren Wert "Hallo Welt".
Die "überlastet, insbesondere die das Überladen von Operatoren in C + + , aber haben in einem früheren Artikel, auf die wir verweisen für weitere Untersuchungen behandelt worden.
Wir schlagen nun vor zu prüfen, jedoch ausdrücklich, wie dieser gleiche Mechanismus kann auch für andere Arten von Operatoren erweitert werden und wie Versorgungsunternehmen, insbesondere unter Bezugnahme auf die neue und löschen Operatoren, die nützlich für die Speicherverwaltung werden.
Die Operatoren new und delete sind nützlich für die Speicher-Management, insbesondere zu reservieren und zuweisen (oder Zuweisung) einen Speicher für ein neues Objekt (neu) und free (oder freizugeben) den Speicher für den späteren Gebrauch (löschen).
Ein sehr interessanter Aspekt der C + +, das unterscheidet ihn von C, ist es die Existenz von neuen und löschen, die es erlauben, zum Beispiel im Hinblick auf neue, auf den Raum für jedes Objekt erforderlich automatisch berechnen (während der Befehl äquivalent zu C, malloc, muss der Programmierer festlegen, was die Größe des Objekts zugeordnet werden).
An dieser Stelle ist es natürlich, zu fragen, was die Nützlichkeit eines Mechanismus für die Überlastung, da die Stärke der neuen und löschen ist einfach ein tolles allgemeinen Gebrauch, ist es unnötig erscheint, um eine Neudefinition, die berücksichtigt eine Reihe von Fällen zu machen. Der Preis für ein Operator ist so allgemein, sondern, wie es oft geschieht, ein gewisser Mangel im Griff. Zum Beispiel ist es nicht möglich ist, mit der Standardversion des neuen Betreibers, einfach prüfen, ob es Probleme bei der Zuweisung der notwendigen Speicher (Speicher verfügbar ist? Wurde korrekt zugewiesen?) Gewesen. Zur Lösung dieses Problems können Sie in Anspruch nehmen zu überladen ".
So werden wir jetzt diskutieren, mit einem einfachen Beispiel, ein Fall von Überlastung des neuen Betreibers und stellt fest, dass die Erwägungen zur Verfügung gestellt werden und die Verfahren auch dann, wenn Sie aus dem Überladen von Operatoren löschen möchten.
| |
ASP und Access Course
Verwalten einer MS Access Datenbank mit ASP. Mit nur 29 €. |
| |
Course MySQL
Management von Open-Source-Datenbank. -15% Rabatt bis 2012.06.01. |
| |
PHP Kurs
Vollständige natürlich für die Erstellung dynamischer Websites. Preisnachlass -5% bis 2012.06.01. |