Ich weiß, dass diese Frage ein bisschen seltsam ist, aber bitte ertragen Sie mit mir.Erstellen eines Objekts einer Schnittstelle in C++
Ich entwerfe ein OOD für einen Parkplatz. Ich möchte nur die Fahrzeuge parken lassen, die eine autopark
Funktion haben. In Java hätte ich eine Schnittstelle erstellt und nur die Objekte dieser Schnittstelle (d. H. Die Autos mit autopark
Features) hätten parken dürfen. In C++ werden Interfaces mit abstrakten Klassen mit rein virtuellen Methoden erstellt. Also kann ich keine Objekte dieser 'C++ Schnittstelle' erstellen. Wie erreiche ich das in C++?
Hinweis: Ich kenne andere Techniken wie eine Fahne mit dem Vorhandensein oder Fehlen von autopark
Funktion zu bezeichnen, etc; aber ich bin nicht an diesen Problemumgehungen interessiert.
Sie können auch keine Objekte eines Schnittstellentyps in Java erstellen. Da gibt es keinen Unterschied. – chris
@chris, mit einer anonymen Klasse? So etwas wie [hier] (http://stackoverflow.com/questions/3947708/this-appears-to-create-an- object-from-an-interface-how-does-it-work)? –
Das erstellt ein Objekt einer konkreten anonymen Klasse, die die Schnittstelle implementiert. –