Was ist ein Handle in C?
Was ist ein Handle in C?

Video: Was ist ein Handle in C?

Video: Was ist ein Handle in C?
Video: Was ist nachhaltiges Handeln | Handle-Nachhaltig.de 2024, Kann
Anonim

EIN handhaben ist ein allgemeiner Begriff für eine Referenz (nicht speziell eine C++-Referenz) auf ein Objekt. Zusammenfassend, a handhaben kann etwas anderes als ein Zeiger sein, z. B. ein ganzzahliger Index oder ein Objekt, das weitere Details zum Objekt enthält (z. B. ein intelligenter Zeiger).

Wissen Sie auch, wofür Griffe verwendet werden?

In der Computerprogrammierung, a handhaben ist ein abstrakter Verweis auf eine Ressource, die Gebraucht wenn Anwendungssoftware auf Speicherblöcke oder Objekte verweist, die von einem anderen System wie einer Datenbank oder einem Betriebssystem verwaltet werden.

Anschließend stellt sich die Frage, was ein Handle in der C++-Programmierung ist. In C++/CLI, a handhaben ist ein Zeiger auf ein Objekt, das sich auf dem GC-Heap befindet. Erstellen eines Objekts auf der (nicht verwalteten) C++ heap wird mit new erreicht und das Ergebnis eines neuen Ausdrucks ist ein "normaler" Zeiger. Ein verwaltetes Objekt wird auf dem GC-Heap (verwaltet) mit einem gcnew-Ausdruck zugewiesen. Das Ergebnis wird a handhaben.

Auch gefragt, ist ein Handle ein Zeiger?

4 Antworten. EIN handhaben ist normalerweise eine undurchsichtige Referenz auf ein Objekt. Griffe kann nur von Funktionen in derselben Bibliotheksschnittstelle verwendet werden, die die handhaben zurück zum eigentlichen Objekt. EIN Zeiger ist die Kombination aus einer Adresse im Speicher und dem Typ des Objekts, das sich an dieser Speicherstelle befindet.

Was sind Handles in Windows?

Richtig, in Fenster , (und allgemein im Rechnen) a handhaben ist eine Abstraktion, die eine reale Speicheradresse vor dem API-Benutzer verbirgt, wodurch das System den physischen Speicher transparent für das Programm reorganisieren kann. Auflösen von a handhaben in einen Zeiger sperrt den Speicher, und die Freigabe handhaben macht den Zeiger ungültig.

Empfohlen: