Eine interessante Diskussion darüber begann hier , aber niemand war in der Lage, C ++ zur Verfügung zu stellen:
%Vor%Was ist der beste Weg, um so etwas in C ++ zu tun?
Es gibt KEINE standardmäßige und portable Möglichkeit, dies zu tun. Nicht übertragbare Wege können reinterpret_cast (someIntRepresenttingTheAddress) enthalten.
Ich würde hinzufügen, dass Sie den Platzierungsoperator für neu aufrufen können, wenn Sie einen Objektkonstruktor aufrufen möchten, wenn Sie ihn an der angegebenen Adresse zuweisen:
%Vor%Dies wird auch für Speicher-Caching-Objekte verwendet. Erstellen Sie einen Puffer und weisen Sie ihm ein Objekt zu.
%Vor%In C ++ bevorzuge ich die Deklaration der Zeiger als konstante Zeiger in einer Header-Datei:
%Vor%In der C-Sprache wird dies normalerweise mithilfe eines Makros implementiert:
%Vor%Im Rest des Quellcodes wird die Speicheradresse über den symbolischen Namen referenziert.