Zuhause Entwicklung Was ist ein ungeprüfter Operator? - Definition aus techopedia

Was ist ein ungeprüfter Operator? - Definition aus techopedia

Inhaltsverzeichnis:

Anonim

Definition - Was bedeutet ungeprüfter Operator?

Ein ungeprüfter Operator in C # ist ein Operator, mit dem die Überlaufprüfung während der Auswertung von Ausdrücken und Konvertierungen deaktiviert wird.

Bei der Ausführung von Arithmetikoperationen vom Typ Integral mit Ausdrücken, die numerische Datentypen enthalten, kann es zu einer Überlaufausnahme kommen, wenn das Ergebnis der Operation zu groß ist, um in der Anzahl dargestellt zu werden, die basierend auf ihrem Typ mit einer bestimmten Anzahl von Bits belegt wird. In Fällen, in denen ein Überlauf ein akzeptables Ergebnis der Operation ist, ist es erforderlich, die Ausnahme zu unterdrücken und mit dem Programm fortzufahren. Ein ungeprüfter Operator wird in solchen Szenarien verwendet, indem ein ungeprüfter Kontext festgelegt wird, in dem der arithmetische Überlauf beim Abschneiden des Ergebnisses ignoriert wird.

Im Gegensatz zu C / C ++, bei dem die Möglichkeit eines Überlaufs ignoriert wird, bietet C # die Funktion, Überlauf entweder zu behandeln oder zu ignorieren, indem aktivierte und nicht aktivierte Operatoren bereitgestellt werden. Der ungeprüfte Operator wird häufig in Abschnitten eines Projekts verwendet, die im aktivierten Kontext kompiliert werden. Einige der Algorithmen, bei denen der ungeprüfte Operator verwendet werden kann, umfassen Prüfsummen, Verschlüsselungslogik und Zufallszahlengenerierung.

Techopedia erklärt ungeprüften Operator

Ein ungeprüfter Operator wird mit dem Schlüsselwort "ungeprüft" für einen Ausdruck und als Anweisung in einem Codeblock verwendet. Sie legt einen Ausführungskontext fest, in dem die höchstwertigen Bits des Ergebnisses beim Auftreten eines Ganzzahlüberlaufs verworfen werden, während die Ausführung fortgesetzt wird. Der Kontext von ungeprüft gilt für die Anweisungen in der Anweisung "ungeprüft" und nicht für verschachtelte Funktionsaufrufe.

Wenn zum Beispiel das Produkt aus zwei großen Ganzzahlen vom Datentyp die Verwendung von short für einen bestimmten Zweck erfordert, ohne dass das Auftreten eines Überlaufs überprüft werden muss, kann ein ungeprüfter Operator verwendet werden.

Im Allgemeinen kann ein Ausdruck, der konstante Terme enthält, nur während der Kompilierungszeit auf einen Überlauf überprüft werden. Ein ungeprüfter Operator kann verwendet werden, um zu vermeiden, dass solche Ausdrücke auf Überlauf überprüft werden, und auch Ausdrücke, die nicht konstante Begriffe enthalten, die sowohl zur Laufzeit als auch zur Kompilierungszeit standardmäßig deaktiviert sind.

Ein ungeprüfter Operator kann nicht überladen werden.

Da die Verwendung eines ungeprüften Operators einen Leistungsverlust nach sich zieht, sollte er nur verwendet werden, wenn der Überlauf keine Probleme verursacht.

Diese Definition wurde im Kontext von C # geschrieben.
Was ist ein ungeprüfter Operator? - Definition aus techopedia